diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index 4c41c4e..1b5e63d 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -32,3 +32,33 @@ return result; } + +// 被检设备管理 +QList BaseCommonApi::getTestedDevice() +{ + QList result; + QSqlQuery query; + query.exec("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ," + "eei.category , eei.check_cycle ,eei.level , eei.remark from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id "); + if (query.exec()) { + while (query.next()) { + TestedDevice testedDevice; + testedDevice.id = query.value("id").toString(); + testedDevice.equipment_name = query.value("equipment_name").toString(); + testedDevice.model = query.value("model").toString(); + testedDevice.help_instruction = query.value("help_instruction").toString(); + testedDevice.manufacture_no = query.value("manufacture_no").toString(); + testedDevice.manufacturer = query.value("manufacturer").toString(); + testedDevice.FULL_NAME = query.value("FULL_NAME").toString(); + testedDevice.meter_identify = query.value("meter_identify").toString(); + testedDevice.check_cycle = query.value("check_cycle").toString(); + testedDevice.certificate_valid = query.value("certificate_valid").toString(); + + result.append(testedDevice); + } + } else { + qDebug() << "Query execution failed: " << query.lastError().text(); + } + + return result; +} diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index 4c41c4e..1b5e63d 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -32,3 +32,33 @@ return result; } + +// 被检设备管理 +QList BaseCommonApi::getTestedDevice() +{ + QList result; + QSqlQuery query; + query.exec("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ," + "eei.category , eei.check_cycle ,eei.level , eei.remark from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id "); + if (query.exec()) { + while (query.next()) { + TestedDevice testedDevice; + testedDevice.id = query.value("id").toString(); + testedDevice.equipment_name = query.value("equipment_name").toString(); + testedDevice.model = query.value("model").toString(); + testedDevice.help_instruction = query.value("help_instruction").toString(); + testedDevice.manufacture_no = query.value("manufacture_no").toString(); + testedDevice.manufacturer = query.value("manufacturer").toString(); + testedDevice.FULL_NAME = query.value("FULL_NAME").toString(); + testedDevice.meter_identify = query.value("meter_identify").toString(); + testedDevice.check_cycle = query.value("check_cycle").toString(); + testedDevice.certificate_valid = query.value("certificate_valid").toString(); + + result.append(testedDevice); + } + } else { + qDebug() << "Query execution failed: " << query.lastError().text(); + } + + return result; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h index 0da7c9a..6dd49f8 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.h +++ b/softwareDirectory/AutoVerScheme/basecommonapi.h @@ -20,13 +20,27 @@ QString require_over_time; QString is_urgent; }; - +class TestedDevice +{ +public: + QString id; + QString equipment_name; + QString model; + QString help_instruction; + QString manufacture_no; + QString manufacturer; + QString FULL_NAME; + QString meter_identify; + QString check_cycle; + QString certificate_valid; +}; class BaseCommonApi { public: BaseCommonApi(); static QList getAllData(); + static QList getTestedDevice(); }; #endif // BASECOMMONAPI_H diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index 4c41c4e..1b5e63d 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -32,3 +32,33 @@ return result; } + +// 被检设备管理 +QList BaseCommonApi::getTestedDevice() +{ + QList result; + QSqlQuery query; + query.exec("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ," + "eei.category , eei.check_cycle ,eei.level , eei.remark from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id "); + if (query.exec()) { + while (query.next()) { + TestedDevice testedDevice; + testedDevice.id = query.value("id").toString(); + testedDevice.equipment_name = query.value("equipment_name").toString(); + testedDevice.model = query.value("model").toString(); + testedDevice.help_instruction = query.value("help_instruction").toString(); + testedDevice.manufacture_no = query.value("manufacture_no").toString(); + testedDevice.manufacturer = query.value("manufacturer").toString(); + testedDevice.FULL_NAME = query.value("FULL_NAME").toString(); + testedDevice.meter_identify = query.value("meter_identify").toString(); + testedDevice.check_cycle = query.value("check_cycle").toString(); + testedDevice.certificate_valid = query.value("certificate_valid").toString(); + + result.append(testedDevice); + } + } else { + qDebug() << "Query execution failed: " << query.lastError().text(); + } + + return result; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h index 0da7c9a..6dd49f8 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.h +++ b/softwareDirectory/AutoVerScheme/basecommonapi.h @@ -20,13 +20,27 @@ QString require_over_time; QString is_urgent; }; - +class TestedDevice +{ +public: + QString id; + QString equipment_name; + QString model; + QString help_instruction; + QString manufacture_no; + QString manufacturer; + QString FULL_NAME; + QString meter_identify; + QString check_cycle; + QString certificate_valid; +}; class BaseCommonApi { public: BaseCommonApi(); static QList getAllData(); + static QList getTestedDevice(); }; #endif // BASECOMMONAPI_H diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp index 809b353..9b97f91 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.cpp +++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp @@ -2,6 +2,7 @@ #include "ui_checkwindow.h" #include "dialogcheckresult.h" #include +#include "basecommonapi.h" CheckWindow::CheckWindow(QWidget *parent) : QWidget(parent), @@ -16,6 +17,7 @@ ui->tableWidgetMethod->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); for(int i=0;i<2;i++) ui->tableWidget_3->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); + getCheckDevice(); //ui->stackedWidget_2->setCurrentIndex(1); //ui->tableWidgetDevice->verticalHeader()->sectionResizeMode(QHeaderView::Stretch); } @@ -52,3 +54,26 @@ dlg->setModal(true); dlg->show(); } + +void CheckWindow::getCheckDevice() +{ + QList data = BaseCommonApi::getTestedDevice(); + + int rowCount = 0; + int row=0; + QString State; + for (const TestedDevice& device : data) { + rowCount = ui->tableWidgetDevice->rowCount(); + ui->tableWidgetDevice->insertRow(rowCount); + ui->tableWidgetDevice->setItem(row, 1, new QTableWidgetItem(QString::number(row+1))); + ui->tableWidgetDevice->setItem(row, 2, new QTableWidgetItem(device.equipment_name)); //设置数据 + ui->tableWidgetDevice->setItem(row, 3, new QTableWidgetItem(device.model)); //设置数据 + ui->tableWidgetDevice->setItem(row, 4, new QTableWidgetItem(device.help_instruction)); //设置数据 + ui->tableWidgetDevice->setItem(row, 5, new QTableWidgetItem(device.manufacture_no)); //设置数据 + ui->tableWidgetDevice->setItem(row, 6, new QTableWidgetItem(device.manufacturer)); //设置数据 + ui->tableWidgetDevice->setItem(row, 7, new QTableWidgetItem(device.meter_identify)); //设置数据 + //QDebug + row++; + + } +} diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index 4c41c4e..1b5e63d 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -32,3 +32,33 @@ return result; } + +// 被检设备管理 +QList BaseCommonApi::getTestedDevice() +{ + QList result; + QSqlQuery query; + query.exec("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ," + "eei.category , eei.check_cycle ,eei.level , eei.remark from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id "); + if (query.exec()) { + while (query.next()) { + TestedDevice testedDevice; + testedDevice.id = query.value("id").toString(); + testedDevice.equipment_name = query.value("equipment_name").toString(); + testedDevice.model = query.value("model").toString(); + testedDevice.help_instruction = query.value("help_instruction").toString(); + testedDevice.manufacture_no = query.value("manufacture_no").toString(); + testedDevice.manufacturer = query.value("manufacturer").toString(); + testedDevice.FULL_NAME = query.value("FULL_NAME").toString(); + testedDevice.meter_identify = query.value("meter_identify").toString(); + testedDevice.check_cycle = query.value("check_cycle").toString(); + testedDevice.certificate_valid = query.value("certificate_valid").toString(); + + result.append(testedDevice); + } + } else { + qDebug() << "Query execution failed: " << query.lastError().text(); + } + + return result; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h index 0da7c9a..6dd49f8 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.h +++ b/softwareDirectory/AutoVerScheme/basecommonapi.h @@ -20,13 +20,27 @@ QString require_over_time; QString is_urgent; }; - +class TestedDevice +{ +public: + QString id; + QString equipment_name; + QString model; + QString help_instruction; + QString manufacture_no; + QString manufacturer; + QString FULL_NAME; + QString meter_identify; + QString check_cycle; + QString certificate_valid; +}; class BaseCommonApi { public: BaseCommonApi(); static QList getAllData(); + static QList getTestedDevice(); }; #endif // BASECOMMONAPI_H diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp index 809b353..9b97f91 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.cpp +++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp @@ -2,6 +2,7 @@ #include "ui_checkwindow.h" #include "dialogcheckresult.h" #include +#include "basecommonapi.h" CheckWindow::CheckWindow(QWidget *parent) : QWidget(parent), @@ -16,6 +17,7 @@ ui->tableWidgetMethod->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); for(int i=0;i<2;i++) ui->tableWidget_3->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); + getCheckDevice(); //ui->stackedWidget_2->setCurrentIndex(1); //ui->tableWidgetDevice->verticalHeader()->sectionResizeMode(QHeaderView::Stretch); } @@ -52,3 +54,26 @@ dlg->setModal(true); dlg->show(); } + +void CheckWindow::getCheckDevice() +{ + QList data = BaseCommonApi::getTestedDevice(); + + int rowCount = 0; + int row=0; + QString State; + for (const TestedDevice& device : data) { + rowCount = ui->tableWidgetDevice->rowCount(); + ui->tableWidgetDevice->insertRow(rowCount); + ui->tableWidgetDevice->setItem(row, 1, new QTableWidgetItem(QString::number(row+1))); + ui->tableWidgetDevice->setItem(row, 2, new QTableWidgetItem(device.equipment_name)); //设置数据 + ui->tableWidgetDevice->setItem(row, 3, new QTableWidgetItem(device.model)); //设置数据 + ui->tableWidgetDevice->setItem(row, 4, new QTableWidgetItem(device.help_instruction)); //设置数据 + ui->tableWidgetDevice->setItem(row, 5, new QTableWidgetItem(device.manufacture_no)); //设置数据 + ui->tableWidgetDevice->setItem(row, 6, new QTableWidgetItem(device.manufacturer)); //设置数据 + ui->tableWidgetDevice->setItem(row, 7, new QTableWidgetItem(device.meter_identify)); //设置数据 + //QDebug + row++; + + } +} diff --git a/softwareDirectory/AutoVerScheme/checkwindow.h b/softwareDirectory/AutoVerScheme/checkwindow.h index f817fc9..005a85a 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.h +++ b/softwareDirectory/AutoVerScheme/checkwindow.h @@ -20,7 +20,8 @@ void showCheck(); void showMethodWidget(); void showResult(); - +private: + void getCheckDevice(); private: Ui::CheckWindow *ui; }; diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index 4c41c4e..1b5e63d 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -32,3 +32,33 @@ return result; } + +// 被检设备管理 +QList BaseCommonApi::getTestedDevice() +{ + QList result; + QSqlQuery query; + query.exec("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ," + "eei.category , eei.check_cycle ,eei.level , eei.remark from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id "); + if (query.exec()) { + while (query.next()) { + TestedDevice testedDevice; + testedDevice.id = query.value("id").toString(); + testedDevice.equipment_name = query.value("equipment_name").toString(); + testedDevice.model = query.value("model").toString(); + testedDevice.help_instruction = query.value("help_instruction").toString(); + testedDevice.manufacture_no = query.value("manufacture_no").toString(); + testedDevice.manufacturer = query.value("manufacturer").toString(); + testedDevice.FULL_NAME = query.value("FULL_NAME").toString(); + testedDevice.meter_identify = query.value("meter_identify").toString(); + testedDevice.check_cycle = query.value("check_cycle").toString(); + testedDevice.certificate_valid = query.value("certificate_valid").toString(); + + result.append(testedDevice); + } + } else { + qDebug() << "Query execution failed: " << query.lastError().text(); + } + + return result; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h index 0da7c9a..6dd49f8 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.h +++ b/softwareDirectory/AutoVerScheme/basecommonapi.h @@ -20,13 +20,27 @@ QString require_over_time; QString is_urgent; }; - +class TestedDevice +{ +public: + QString id; + QString equipment_name; + QString model; + QString help_instruction; + QString manufacture_no; + QString manufacturer; + QString FULL_NAME; + QString meter_identify; + QString check_cycle; + QString certificate_valid; +}; class BaseCommonApi { public: BaseCommonApi(); static QList getAllData(); + static QList getTestedDevice(); }; #endif // BASECOMMONAPI_H diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp index 809b353..9b97f91 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.cpp +++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp @@ -2,6 +2,7 @@ #include "ui_checkwindow.h" #include "dialogcheckresult.h" #include +#include "basecommonapi.h" CheckWindow::CheckWindow(QWidget *parent) : QWidget(parent), @@ -16,6 +17,7 @@ ui->tableWidgetMethod->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); for(int i=0;i<2;i++) ui->tableWidget_3->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); + getCheckDevice(); //ui->stackedWidget_2->setCurrentIndex(1); //ui->tableWidgetDevice->verticalHeader()->sectionResizeMode(QHeaderView::Stretch); } @@ -52,3 +54,26 @@ dlg->setModal(true); dlg->show(); } + +void CheckWindow::getCheckDevice() +{ + QList data = BaseCommonApi::getTestedDevice(); + + int rowCount = 0; + int row=0; + QString State; + for (const TestedDevice& device : data) { + rowCount = ui->tableWidgetDevice->rowCount(); + ui->tableWidgetDevice->insertRow(rowCount); + ui->tableWidgetDevice->setItem(row, 1, new QTableWidgetItem(QString::number(row+1))); + ui->tableWidgetDevice->setItem(row, 2, new QTableWidgetItem(device.equipment_name)); //设置数据 + ui->tableWidgetDevice->setItem(row, 3, new QTableWidgetItem(device.model)); //设置数据 + ui->tableWidgetDevice->setItem(row, 4, new QTableWidgetItem(device.help_instruction)); //设置数据 + ui->tableWidgetDevice->setItem(row, 5, new QTableWidgetItem(device.manufacture_no)); //设置数据 + ui->tableWidgetDevice->setItem(row, 6, new QTableWidgetItem(device.manufacturer)); //设置数据 + ui->tableWidgetDevice->setItem(row, 7, new QTableWidgetItem(device.meter_identify)); //设置数据 + //QDebug + row++; + + } +} diff --git a/softwareDirectory/AutoVerScheme/checkwindow.h b/softwareDirectory/AutoVerScheme/checkwindow.h index f817fc9..005a85a 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.h +++ b/softwareDirectory/AutoVerScheme/checkwindow.h @@ -20,7 +20,8 @@ void showCheck(); void showMethodWidget(); void showResult(); - +private: + void getCheckDevice(); private: Ui::CheckWindow *ui; }; diff --git a/softwareDirectory/AutoVerScheme/visacommonengine.cpp b/softwareDirectory/AutoVerScheme/visacommonengine.cpp new file mode 100644 index 0000000..53c742b --- /dev/null +++ b/softwareDirectory/AutoVerScheme/visacommonengine.cpp @@ -0,0 +1,86 @@ +#include "visacommonengine.h" +#include + + +VisaCommonEngine::VisaCommonEngine() +{ + +} + +bool VisaCommonEngine::openDevice() +{ + status = viOpenDefaultRM(&defaultRM); + if (status < VI_SUCCESS) + { + qDebug() << "Could not open a session to the VISA Resource Manager!\n"; + } + + status = viOpen(defaultRM, remoteAddr, VI_NULL, VI_NULL, &instr); + if (status < VI_SUCCESS) + { + qDebug() << "Cannot open a session to the device.\n"; + goto Close; + } + + //viQueryf(instr,"IDN ?\n","%t",buffer); + status = viQueryf( instr, "*IDN?\n", "%s", buffer); + + if (status < VI_SUCCESS){ + qDebug() << "Error reading a response from the device.\n"; + }else{ + qDebug() << "Data read:" << retCount << QString::fromLocal8Bit((char*)buffer); + + //ui->textBrowser->setText(QString::fromLocal8Bit((char*)buffer,retCount)); + } + + + /* Set the timeout to 5 seconds (5000 milliseconds). */ + status = viSetAttribute(instr, VI_ATTR_TMO_VALUE, 5000); + + /* Set the baud rate to 4800 (default is 9600). */ + status = viSetAttribute(instr, VI_ATTR_ASRL_BAUD, 4800); + + /* Set the number of data bits contained in each frame (from 5 to 8). + * The data bits for each frame are located in the low-order bits of + * every byte stored in memory. + */ + status = viSetAttribute(instr, VI_ATTR_ASRL_DATA_BITS, 8); + + status = viSetAttribute(instr, VI_ATTR_ASRL_PARITY, VI_ASRL_PAR_NONE); + + status = viSetAttribute(instr, VI_ATTR_ASRL_STOP_BITS, VI_ASRL_STOP_ONE); + + status = viSetAttribute(instr, VI_ATTR_TERMCHAR_EN, VI_TRUE); + + /* Set the termination character to 0xA + */ + status = viSetAttribute(instr, VI_ATTR_TERMCHAR, 0xA); + + + strcpy(stringinput, ":MEASure:VOLTage:DC?\n"); + //strcpy(stringinput, "*IDN?\n"); + status = viWrite(instr, (ViBuf)stringinput, (ViUInt32)strlen(stringinput), &writeCount); + if (status < VI_SUCCESS){ + qDebug() << "Error writing to the device.\n"; + goto Close; + } + + status = viRead(instr, buffer, 100, &retCount); + if (status < VI_SUCCESS){ + qDebug() << "Error reading a response from the device.\n"; + }else{ + qDebug() << "Data read:" << retCount << QString::fromLocal8Bit((char*)buffer,retCount); + + //ui->textBrowser->setText(QString::fromLocal8Bit((char*)buffer,retCount)); + } + +Close: + status = viClose(instr); + status = viClose(defaultRM); + return true; +} + +QString VisaCommonEngine::queryData() +{ + return ""; +} diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro index d61bc5b..122d6ca 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro @@ -1,11 +1,11 @@ QT += core gui QT += sql QT += widgets - +QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11 -CONFIG +=qaxcontainer + # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings @@ -51,9 +51,13 @@ testview.cpp \ verifymethodmanage.cpp \ verifywindow.cpp \ + visacommonengine.cpp \ wordengine.cpp HEADERS += \ + Visa/Include/visa.h \ + Visa/Include/visatype.h \ + Visa/Include/vpptype.h \ basecommonapi.h \ biz_device_manage_serve.h \ check_data_manage_serve.h \ @@ -87,6 +91,7 @@ verifymethodmanage.h \ verifywindow.h\ biz_device_manage_serve.h \ + visacommonengine.h \ wordengine.h FORMS += \ @@ -121,6 +126,38 @@ res/qss.qrc \ res/res.qrc +INCLUDEPATH += $$PWD/Visa/Include +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lvisa64 +LIBS += -L$$PWD/Visa/Lib_x64/msc/ -lnivisa64 + DISTFILES += \ + Visa/Bin/NiVi488.dll \ + Visa/Bin/NiViAsrl.dll \ + Visa/Bin/NiViEnet.dll \ + Visa/Bin/NiViEnetAsrl.dll \ + Visa/Bin/NiViPxi.dll \ + Visa/Bin/NiViRpc.dll \ + Visa/Bin/NiViUsb.dll \ + Visa/Bin/NiVisaTulip.dll \ + Visa/Include/visa32.bas \ + Visa/Include/vpptype.bas \ + Visa/Lib_x64/msc/nivisa64.lib \ + Visa/Lib_x64/msc/visa64.lib \ + Visa/NIvisa/DIFxAPI.dll \ + Visa/NIvisa/DefaultVisaConf.ini \ + Visa/NIvisa/DriverWizardInstallInf64.exe \ + Visa/NIvisa/NI-VISA Driver Wizard.exe \ + Visa/NIvisa/NIVisaServer.exe \ + Visa/NIvisa/NIvisaic.exe \ + Visa/NIvisa/NIvisaic.ini \ + Visa/NIvisa/NiVisaCom.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiD.dll \ + Visa/NIvisa/PxiPlugins/NiViPpiP.dll \ + Visa/NIvisa/ni-visa.chm \ + Visa/NIvisa/nivisa_usbverifieru.dll \ + Visa/NIvisa/nivisagsg.chm \ + Visa/NIvisa/viic_ext.dll \ + Visa/lib/bc/visa32.lib \ + Visa/lib/msc/visa32.lib \ res/image/u2.png diff --git a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user index 643d68a..3bb55c3 100644 --- a/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user +++ b/softwareDirectory/AutoVerScheme/AutoVerScheme.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId @@ -55,10 +55,27 @@ ProjectExplorer.Project.PluginSettings + + true + true + true + true + + 0 + true -fno-delayed-template-parsing true + + true + Builtin.TidyAndClazy + 4 + + + + true + diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll new file mode 100644 index 0000000..5820462 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVi488.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll new file mode 100644 index 0000000..59d67f6 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll new file mode 100644 index 0000000..cb3a65f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnet.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll new file mode 100644 index 0000000..59c00b2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViEnetAsrl.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll new file mode 100644 index 0000000..403cd71 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViPxi.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll new file mode 100644 index 0000000..52f5650 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViRpc.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll new file mode 100644 index 0000000..201d1e1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiViUsb.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll new file mode 100644 index 0000000..e103d32 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Bin/NiVisaTulip.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa.h b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h new file mode 100644 index 0000000..c97382e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa.h @@ -0,0 +1,1147 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* Contains National Instruments extensions. */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISA.H */ +/* Date : 06-08-2017 */ +/* Purpose : Include file for the VISA Library 5.8 specification */ +/* */ +/*---------------------------------------------------------------------------*/ +/* When using NI-VISA extensions, you must link with the VISA library that */ +/* comes with NI-VISA. Currently, the extensions provided by NI-VISA are: */ +/* */ +/* PXI (Compact PCI eXtensions for Instrumentation) and PCI support. To use */ +/* this, you must define the macro NIVISA_PXI before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/* */ +/* A fast set of macros for viPeekXX/viPokeXX that guarantees binary */ +/* compatibility with other implementations of VISA. To use this, you must */ +/* define the macro NIVISA_PEEKPOKE before including this header. */ +/* */ +/* Support for USB devices that do not conform to a specific class. To use */ +/* this, you must define the macro NIVISA_USB before including this header. */ +/* You must also create an INF file with the VISA Driver Development Wizard. */ +/*---------------------------------------------------------------------------*/ + +#ifndef __VISA_HEADER__ +#define __VISA_HEADER__ + +#include + +#if !defined(__VISATYPE_HEADER__) +#include "visatype.h" +#endif + +#define VI_SPEC_VERSION (0x00500800UL) + +#if defined(__cplusplus) || defined(__cplusplus__) + extern "C" { +#endif + +#if defined(_CVI_) +#pragma EnableLibraryRuntimeChecking +#endif + +/*- VISA Types --------------------------------------------------------------*/ + +typedef ViObject ViEvent; +typedef ViEvent _VI_PTR ViPEvent; +typedef ViObject ViFindList; +typedef ViFindList _VI_PTR ViPFindList; + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +typedef ViUInt64 ViBusAddress; +typedef ViUInt64 ViBusSize; +typedef ViUInt64 ViAttrState; +#else +typedef ViUInt32 ViBusAddress; +typedef ViUInt32 ViBusSize; +typedef ViUInt32 ViAttrState; +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 ViBusAddress64; +typedef ViBusAddress64 _VI_PTR ViPBusAddress64; +#endif + +typedef ViUInt32 ViEventType; +typedef ViEventType _VI_PTR ViPEventType; +typedef ViEventType _VI_PTR ViAEventType; +typedef void _VI_PTR ViPAttrState; +typedef ViAttr _VI_PTR ViPAttr; +typedef ViAttr _VI_PTR ViAAttr; + +typedef ViString ViKeyId; +typedef ViConstString ViConstKeyId; +typedef ViPString ViPKeyId; +typedef ViUInt32 ViJobId; +typedef ViJobId _VI_PTR ViPJobId; +typedef ViUInt32 ViAccessMode; +typedef ViAccessMode _VI_PTR ViPAccessMode; +typedef ViBusAddress _VI_PTR ViPBusAddress; +typedef ViUInt32 ViEventFilter; + +typedef va_list ViVAList; + +typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr) + (ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle); + +/*- Resource Manager Functions and Operations -------------------------------*/ + +ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi); +ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViConstString expr, ViPFindList vi, + ViPUInt32 retCnt, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViConstRsrc rsrcName, + ViPUInt16 intfType, ViPUInt16 intfNum); +ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViConstRsrc rsrcName, ViPUInt16 intfType, + ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], + ViChar _VI_FAR expandedUnaliasedName[], + ViChar _VI_FAR aliasIfExists[]); +ViStatus _VI_FUNC viOpen (ViSession sesn, ViConstRsrc name, ViAccessMode mode, + ViUInt32 timeout, ViPSession vi); + +/*- Resource Template Operations --------------------------------------------*/ + +ViStatus _VI_FUNC viClose (ViObject vi); +ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue); +ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue); +ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]); +ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId); + +ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout, + ViConstKeyId requestedKey, ViChar _VI_FAR accessKey[]); +ViStatus _VI_FUNC viUnlock (ViSession vi); +ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism, + ViEventFilter context); +ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism); +ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout, + ViPEventType outEventType, ViPEvent outContext); +ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); +ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler, + ViAddr userHandle); + +/*- Basic I/O Operations ----------------------------------------------------*/ + +ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPJobId jobId); +ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt, + ViPUInt32 retCnt); +ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol); +ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status); +ViStatus _VI_FUNC viClear (ViSession vi); + +/*- Formatted and Buffered I/O Operations -----------------------------------*/ + +ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size); +ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask); + +ViStatus _VI_FUNC viBufWrite (ViSession vi, ViConstBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt); + +ViStatus _VI_FUNCC viPrintf (ViSession vi, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVPrintf (ViSession vi, ViConstString writeFmt, ViVAList params); +ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, ...); +ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViBuf buf, ViConstString writeFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viScanf (ViSession vi, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVScanf (ViSession vi, ViConstString readFmt, ViVAList params); +ViStatus _VI_FUNCC viSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVSScanf (ViSession vi, ViConstBuf buf, ViConstString readFmt, + ViVAList parms); + +ViStatus _VI_FUNCC viQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, ...); +ViStatus _VI_FUNC viVQueryf (ViSession vi, ViConstString writeFmt, ViConstString readFmt, + ViVAList params); + +/*- Memory I/O Operations ---------------------------------------------------*/ + +ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viIn64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64 (ViSession vi, ViUInt16 space, + ViBusAddress offset, ViUInt64 val64); + +ViStatus _VI_FUNC viIn8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt8 val8); +ViStatus _VI_FUNC viOut8Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt8 val8); +ViStatus _VI_FUNC viIn16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt16 val16); +ViStatus _VI_FUNC viOut16Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt16 val16); +ViStatus _VI_FUNC viIn32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt32 val32); +ViStatus _VI_FUNC viOut32Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt32 val32); +ViStatus _VI_FUNC viIn64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViPUInt64 val64); +ViStatus _VI_FUNC viOut64Ex (ViSession vi, ViUInt16 space, + ViBusAddress64 offset, ViUInt64 val64); +#endif + +ViStatus _VI_FUNC viMoveIn8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt32 buf32); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveIn64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64 (ViSession vi, ViUInt16 space, ViBusAddress offset, + ViBusSize length, ViAUInt64 buf64); + +ViStatus _VI_FUNC viMoveIn8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveOut8Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt8 buf8); +ViStatus _VI_FUNC viMoveIn16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveOut16Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt16 buf16); +ViStatus _VI_FUNC viMoveIn32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveOut32Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt32 buf32); +ViStatus _VI_FUNC viMoveIn64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +ViStatus _VI_FUNC viMoveOut64Ex (ViSession vi, ViUInt16 space, ViBusAddress64 offset, + ViBusSize length, ViAUInt64 buf64); +#endif + +ViStatus _VI_FUNC viMove (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsync (ViSession vi, ViUInt16 srcSpace, ViBusAddress srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMoveEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength); +ViStatus _VI_FUNC viMoveAsyncEx (ViSession vi, ViUInt16 srcSpace, ViBusAddress64 srcOffset, + ViUInt16 srcWidth, ViUInt16 destSpace, + ViBusAddress64 destOffset, ViUInt16 destWidth, + ViBusSize srcLength, ViPJobId jobId); +#endif + +ViStatus _VI_FUNC viMapAddress (ViSession vi, ViUInt16 mapSpace, ViBusAddress mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +ViStatus _VI_FUNC viUnmapAddress (ViSession vi); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMapAddressEx (ViSession vi, ViUInt16 mapSpace, ViBusAddress64 mapOffset, + ViBusSize mapSize, ViBoolean access, + ViAddr suggested, ViPAddr address); +#endif + +void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8); +void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8); +void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16); +void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16); +void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32); +void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32); + +#if defined(_VI_INT64_UINT64_DEFINED) +void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64); +void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64); +#endif + +/*- Shared Memory Operations ------------------------------------------------*/ + +ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset); +ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset); + +#if defined(_VI_INT64_UINT64_DEFINED) +ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset); +ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset); +#endif + +/*- Interface Specific Operations -------------------------------------------*/ + +ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode); +ViStatus _VI_FUNC viGpibSendIFC (ViSession vi); +ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViConstBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt); +ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr); + +ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd, + ViPUInt32 response); +ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line); +ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID); +ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest, + ViUInt16 mode); +ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest); +ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViConstBuf buf); +ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest, + ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength, + ViPBuf buf, ViPUInt16 retCnt); +ViStatus _VI_FUNC viPxiReserveTriggers(ViSession vi, ViInt16 cnt, ViAInt16 trigBuses, + ViAInt16 trigLines, ViPInt16 failureIndex); + +/*- Attributes (platform independent size) ----------------------------------*/ + +#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL) +#define VI_ATTR_RSRC_NAME (0xBFFF0002UL) +#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL) +#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL) +#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL) +#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL) +#define VI_ATTR_FDC_CHNL (0x3FFF000DUL) +#define VI_ATTR_FDC_MODE (0x3FFF000FUL) +#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL) +#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL) +#define VI_ATTR_SEND_END_EN (0x3FFF0016UL) +#define VI_ATTR_TERMCHAR (0x3FFF0018UL) +#define VI_ATTR_TMO_VALUE (0x3FFF001AUL) +#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL) +#define VI_ATTR_IO_PROT (0x3FFF001CUL) +#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL) +#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL) +#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL) +#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL) +#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL) +#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL) +#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL) +#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL) +#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL) +#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL) +#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL) +#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL) +#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL) +#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL) +#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL) +#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL) +#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL) +#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL) +#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL) +#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL) +#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL) +#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL) +#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL) +#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL) +#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL) +#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL) +#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL) +#define VI_ATTR_CMDR_LA (0x3FFF006BUL) +#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL) +#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL) +#define VI_ATTR_MANF_NAME (0xBFFF0072UL) +#define VI_ATTR_MODEL_NAME (0xBFFF0077UL) +#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL) +#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL) +#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL) +#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL) +#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL) +#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL) +#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL) +#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL) +#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL) +#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL) +#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL) +#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL) +#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL) +#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL) +#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL) +#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL) +#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL) +#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL) +#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL) +#define VI_ATTR_RM_SESSION (0x3FFF00C4UL) +#define VI_ATTR_VXI_LA (0x3FFF00D5UL) +#define VI_ATTR_MANF_ID (0x3FFF00D9UL) +#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL) +#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL) +#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL) +#define VI_ATTR_SLOT (0x3FFF00E8UL) +#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL) +#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL) +#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL) +#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL) +#define VI_ATTR_INTF_TYPE (0x3FFF0171UL) +#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL) +#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL) +#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL) +#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL) +#define VI_ATTR_INTF_NUM (0x3FFF0176UL) +#define VI_ATTR_TRIG_ID (0x3FFF0177UL) +#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL) +#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL) +#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL) +#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL) +#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL) +#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL) +#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL) +#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL) +#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL) +#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL) +#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL) +#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL) +#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL) +#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL) +#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL) +#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL) +#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL) +#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL) +#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL) +#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL) +#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL) +#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL) +#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL) +#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL) +#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL) +#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL) +#define VI_ATTR_PXI_SRC_TRIG_BUS (0x3FFF020DUL) +#define VI_ATTR_PXI_DEST_TRIG_BUS (0x3FFF020EUL) +#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL) +#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_32 (0x3FFF0221UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_32 (0x3FFF0222UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_32 (0x3FFF0223UL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_32 (0x3FFF0224UL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_32 (0x3FFF0225UL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_32 (0x3FFF0226UL) +#define VI_ATTR_PXI_MEM_BASE_BAR0_64 (0x3FFF0228UL) +#define VI_ATTR_PXI_MEM_BASE_BAR1_64 (0x3FFF0229UL) +#define VI_ATTR_PXI_MEM_BASE_BAR2_64 (0x3FFF022AUL) +#define VI_ATTR_PXI_MEM_BASE_BAR3_64 (0x3FFF022BUL) +#define VI_ATTR_PXI_MEM_BASE_BAR4_64 (0x3FFF022CUL) +#define VI_ATTR_PXI_MEM_BASE_BAR5_64 (0x3FFF022DUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_32 (0x3FFF0231UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_32 (0x3FFF0232UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_32 (0x3FFF0233UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_32 (0x3FFF0234UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_32 (0x3FFF0235UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_32 (0x3FFF0236UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR0_64 (0x3FFF0238UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR1_64 (0x3FFF0239UL) +#define VI_ATTR_PXI_MEM_SIZE_BAR2_64 (0x3FFF023AUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR3_64 (0x3FFF023BUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR4_64 (0x3FFF023CUL) +#define VI_ATTR_PXI_MEM_SIZE_BAR5_64 (0x3FFF023DUL) +#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL) +#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL) +#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL) +#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL) +#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL) +#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL) +#define VI_ATTR_PXI_ALLOW_WRITE_COMBINE (0x3FFF0246UL) +#define VI_ATTR_TCPIP_HISLIP_OVERLAP_EN (0x3FFF0300UL) +#define VI_ATTR_TCPIP_HISLIP_VERSION (0x3FFF0301UL) +#define VI_ATTR_TCPIP_HISLIP_MAX_MESSAGE_KB (0x3FFF0302UL) +#define VI_ATTR_TCPIP_IS_HISLIP (0x3FFF0303UL) + +#define VI_ATTR_JOB_ID (0x3FFF4006UL) +#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL) +#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL) +#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL) +#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL) +#define VI_ATTR_STATUS (0x3FFF4025UL) +#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL) +#define VI_ATTR_BUFFER (0x3FFF4027UL) +#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL) +#define VI_ATTR_OPER_NAME (0xBFFF4042UL) +#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL) +#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL) +#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL) +#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL) +#define VI_ATTR_PXI_RECV_INTR_SEQ (0x3FFF4240UL) +#define VI_ATTR_PXI_RECV_INTR_DATA (0x3FFF4241UL) + +/*- Attributes (platform dependent size) ------------------------------------*/ + +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL) +#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL) +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64) +#else +#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32) +#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32) +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL) +#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL) +#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL) +#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL) +#endif +#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT) +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_64) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_64) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_64) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_64) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_64) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_64) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_64) +#else +#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32) +#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32) +#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32) +#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32) +#define VI_ATTR_PXI_MEM_BASE_BAR0 (VI_ATTR_PXI_MEM_BASE_BAR0_32) +#define VI_ATTR_PXI_MEM_BASE_BAR1 (VI_ATTR_PXI_MEM_BASE_BAR1_32) +#define VI_ATTR_PXI_MEM_BASE_BAR2 (VI_ATTR_PXI_MEM_BASE_BAR2_32) +#define VI_ATTR_PXI_MEM_BASE_BAR3 (VI_ATTR_PXI_MEM_BASE_BAR3_32) +#define VI_ATTR_PXI_MEM_BASE_BAR4 (VI_ATTR_PXI_MEM_BASE_BAR4_32) +#define VI_ATTR_PXI_MEM_BASE_BAR5 (VI_ATTR_PXI_MEM_BASE_BAR5_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR0 (VI_ATTR_PXI_MEM_SIZE_BAR0_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR1 (VI_ATTR_PXI_MEM_SIZE_BAR1_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR2 (VI_ATTR_PXI_MEM_SIZE_BAR2_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR3 (VI_ATTR_PXI_MEM_SIZE_BAR3_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR4 (VI_ATTR_PXI_MEM_SIZE_BAR4_32) +#define VI_ATTR_PXI_MEM_SIZE_BAR5 (VI_ATTR_PXI_MEM_SIZE_BAR5_32) +#endif + +/*- Event Types -------------------------------------------------------------*/ + +#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL) +#define VI_EVENT_TRIG (0xBFFF200AUL) +#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL) +#define VI_EVENT_CLEAR (0x3FFF200DUL) +#define VI_EVENT_EXCEPTION (0xBFFF200EUL) +#define VI_EVENT_GPIB_CIC (0x3FFF2012UL) +#define VI_EVENT_GPIB_TALK (0x3FFF2013UL) +#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL) +#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL) +#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL) +#define VI_EVENT_VXI_SIGP (0x3FFF2020UL) +#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL) +#define VI_EVENT_PXI_INTR (0x3FFF2022UL) +#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL) +#define VI_EVENT_USB_INTR (0x3FFF2037UL) + +#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL) + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */ +#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */ +#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */ +#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */ +#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */ +#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */ +#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */ +#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */ +#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */ +#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */ +#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */ +#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */ + +#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */ +#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */ +#define VI_WARN_NULL_OBJECT (0x3FFF0082L) /* 3FFF0082, 1073676418 */ +#define VI_WARN_NSUP_ATTR_STATE (0x3FFF0084L) /* 3FFF0084, 1073676420 */ +#define VI_WARN_UNKNOWN_STATUS (0x3FFF0085L) /* 3FFF0085, 1073676421 */ +#define VI_WARN_NSUP_BUF (0x3FFF0088L) /* 3FFF0088, 1073676424 */ +#define VI_WARN_EXT_FUNC_NIMPL (0x3FFF00A9L) /* 3FFF00A9, 1073676457 */ + +#define VI_ERROR_SYSTEM_ERROR (_VI_ERROR+0x3FFF0000L) /* BFFF0000, -1073807360 */ +#define VI_ERROR_INV_OBJECT (_VI_ERROR+0x3FFF000EL) /* BFFF000E, -1073807346 */ +#define VI_ERROR_RSRC_LOCKED (_VI_ERROR+0x3FFF000FL) /* BFFF000F, -1073807345 */ +#define VI_ERROR_INV_EXPR (_VI_ERROR+0x3FFF0010L) /* BFFF0010, -1073807344 */ +#define VI_ERROR_RSRC_NFOUND (_VI_ERROR+0x3FFF0011L) /* BFFF0011, -1073807343 */ +#define VI_ERROR_INV_RSRC_NAME (_VI_ERROR+0x3FFF0012L) /* BFFF0012, -1073807342 */ +#define VI_ERROR_INV_ACC_MODE (_VI_ERROR+0x3FFF0013L) /* BFFF0013, -1073807341 */ +#define VI_ERROR_TMO (_VI_ERROR+0x3FFF0015L) /* BFFF0015, -1073807339 */ +#define VI_ERROR_CLOSING_FAILED (_VI_ERROR+0x3FFF0016L) /* BFFF0016, -1073807338 */ +#define VI_ERROR_INV_DEGREE (_VI_ERROR+0x3FFF001BL) /* BFFF001B, -1073807333 */ +#define VI_ERROR_INV_JOB_ID (_VI_ERROR+0x3FFF001CL) /* BFFF001C, -1073807332 */ +#define VI_ERROR_NSUP_ATTR (_VI_ERROR+0x3FFF001DL) /* BFFF001D, -1073807331 */ +#define VI_ERROR_NSUP_ATTR_STATE (_VI_ERROR+0x3FFF001EL) /* BFFF001E, -1073807330 */ +#define VI_ERROR_ATTR_READONLY (_VI_ERROR+0x3FFF001FL) /* BFFF001F, -1073807329 */ +#define VI_ERROR_INV_LOCK_TYPE (_VI_ERROR+0x3FFF0020L) /* BFFF0020, -1073807328 */ +#define VI_ERROR_INV_ACCESS_KEY (_VI_ERROR+0x3FFF0021L) /* BFFF0021, -1073807327 */ +#define VI_ERROR_INV_EVENT (_VI_ERROR+0x3FFF0026L) /* BFFF0026, -1073807322 */ +#define VI_ERROR_INV_MECH (_VI_ERROR+0x3FFF0027L) /* BFFF0027, -1073807321 */ +#define VI_ERROR_HNDLR_NINSTALLED (_VI_ERROR+0x3FFF0028L) /* BFFF0028, -1073807320 */ +#define VI_ERROR_INV_HNDLR_REF (_VI_ERROR+0x3FFF0029L) /* BFFF0029, -1073807319 */ +#define VI_ERROR_INV_CONTEXT (_VI_ERROR+0x3FFF002AL) /* BFFF002A, -1073807318 */ +#define VI_ERROR_QUEUE_OVERFLOW (_VI_ERROR+0x3FFF002DL) /* BFFF002D, -1073807315 */ +#define VI_ERROR_NENABLED (_VI_ERROR+0x3FFF002FL) /* BFFF002F, -1073807313 */ +#define VI_ERROR_ABORT (_VI_ERROR+0x3FFF0030L) /* BFFF0030, -1073807312 */ +#define VI_ERROR_RAW_WR_PROT_VIOL (_VI_ERROR+0x3FFF0034L) /* BFFF0034, -1073807308 */ +#define VI_ERROR_RAW_RD_PROT_VIOL (_VI_ERROR+0x3FFF0035L) /* BFFF0035, -1073807307 */ +#define VI_ERROR_OUTP_PROT_VIOL (_VI_ERROR+0x3FFF0036L) /* BFFF0036, -1073807306 */ +#define VI_ERROR_INP_PROT_VIOL (_VI_ERROR+0x3FFF0037L) /* BFFF0037, -1073807305 */ +#define VI_ERROR_BERR (_VI_ERROR+0x3FFF0038L) /* BFFF0038, -1073807304 */ +#define VI_ERROR_IN_PROGRESS (_VI_ERROR+0x3FFF0039L) /* BFFF0039, -1073807303 */ +#define VI_ERROR_INV_SETUP (_VI_ERROR+0x3FFF003AL) /* BFFF003A, -1073807302 */ +#define VI_ERROR_QUEUE_ERROR (_VI_ERROR+0x3FFF003BL) /* BFFF003B, -1073807301 */ +#define VI_ERROR_ALLOC (_VI_ERROR+0x3FFF003CL) /* BFFF003C, -1073807300 */ +#define VI_ERROR_INV_MASK (_VI_ERROR+0x3FFF003DL) /* BFFF003D, -1073807299 */ +#define VI_ERROR_IO (_VI_ERROR+0x3FFF003EL) /* BFFF003E, -1073807298 */ +#define VI_ERROR_INV_FMT (_VI_ERROR+0x3FFF003FL) /* BFFF003F, -1073807297 */ +#define VI_ERROR_NSUP_FMT (_VI_ERROR+0x3FFF0041L) /* BFFF0041, -1073807295 */ +#define VI_ERROR_LINE_IN_USE (_VI_ERROR+0x3FFF0042L) /* BFFF0042, -1073807294 */ +#define VI_ERROR_LINE_NRESERVED (_VI_ERROR+0x3FFF0043L) /* BFFF0043, -1073807293 */ +#define VI_ERROR_NSUP_MODE (_VI_ERROR+0x3FFF0046L) /* BFFF0046, -1073807290 */ +#define VI_ERROR_SRQ_NOCCURRED (_VI_ERROR+0x3FFF004AL) /* BFFF004A, -1073807286 */ +#define VI_ERROR_INV_SPACE (_VI_ERROR+0x3FFF004EL) /* BFFF004E, -1073807282 */ +#define VI_ERROR_INV_OFFSET (_VI_ERROR+0x3FFF0051L) /* BFFF0051, -1073807279 */ +#define VI_ERROR_INV_WIDTH (_VI_ERROR+0x3FFF0052L) /* BFFF0052, -1073807278 */ +#define VI_ERROR_NSUP_OFFSET (_VI_ERROR+0x3FFF0054L) /* BFFF0054, -1073807276 */ +#define VI_ERROR_NSUP_VAR_WIDTH (_VI_ERROR+0x3FFF0055L) /* BFFF0055, -1073807275 */ +#define VI_ERROR_WINDOW_NMAPPED (_VI_ERROR+0x3FFF0057L) /* BFFF0057, -1073807273 */ +#define VI_ERROR_RESP_PENDING (_VI_ERROR+0x3FFF0059L) /* BFFF0059, -1073807271 */ +#define VI_ERROR_NLISTENERS (_VI_ERROR+0x3FFF005FL) /* BFFF005F, -1073807265 */ +#define VI_ERROR_NCIC (_VI_ERROR+0x3FFF0060L) /* BFFF0060, -1073807264 */ +#define VI_ERROR_NSYS_CNTLR (_VI_ERROR+0x3FFF0061L) /* BFFF0061, -1073807263 */ +#define VI_ERROR_NSUP_OPER (_VI_ERROR+0x3FFF0067L) /* BFFF0067, -1073807257 */ +#define VI_ERROR_INTR_PENDING (_VI_ERROR+0x3FFF0068L) /* BFFF0068, -1073807256 */ +#define VI_ERROR_ASRL_PARITY (_VI_ERROR+0x3FFF006AL) /* BFFF006A, -1073807254 */ +#define VI_ERROR_ASRL_FRAMING (_VI_ERROR+0x3FFF006BL) /* BFFF006B, -1073807253 */ +#define VI_ERROR_ASRL_OVERRUN (_VI_ERROR+0x3FFF006CL) /* BFFF006C, -1073807252 */ +#define VI_ERROR_TRIG_NMAPPED (_VI_ERROR+0x3FFF006EL) /* BFFF006E, -1073807250 */ +#define VI_ERROR_NSUP_ALIGN_OFFSET (_VI_ERROR+0x3FFF0070L) /* BFFF0070, -1073807248 */ +#define VI_ERROR_USER_BUF (_VI_ERROR+0x3FFF0071L) /* BFFF0071, -1073807247 */ +#define VI_ERROR_RSRC_BUSY (_VI_ERROR+0x3FFF0072L) /* BFFF0072, -1073807246 */ +#define VI_ERROR_NSUP_WIDTH (_VI_ERROR+0x3FFF0076L) /* BFFF0076, -1073807242 */ +#define VI_ERROR_INV_PARAMETER (_VI_ERROR+0x3FFF0078L) /* BFFF0078, -1073807240 */ +#define VI_ERROR_INV_PROT (_VI_ERROR+0x3FFF0079L) /* BFFF0079, -1073807239 */ +#define VI_ERROR_INV_SIZE (_VI_ERROR+0x3FFF007BL) /* BFFF007B, -1073807237 */ +#define VI_ERROR_WINDOW_MAPPED (_VI_ERROR+0x3FFF0080L) /* BFFF0080, -1073807232 */ +#define VI_ERROR_NIMPL_OPER (_VI_ERROR+0x3FFF0081L) /* BFFF0081, -1073807231 */ +#define VI_ERROR_INV_LENGTH (_VI_ERROR+0x3FFF0083L) /* BFFF0083, -1073807229 */ +#define VI_ERROR_INV_MODE (_VI_ERROR+0x3FFF0091L) /* BFFF0091, -1073807215 */ +#define VI_ERROR_SESN_NLOCKED (_VI_ERROR+0x3FFF009CL) /* BFFF009C, -1073807204 */ +#define VI_ERROR_MEM_NSHARED (_VI_ERROR+0x3FFF009DL) /* BFFF009D, -1073807203 */ +#define VI_ERROR_LIBRARY_NFOUND (_VI_ERROR+0x3FFF009EL) /* BFFF009E, -1073807202 */ +#define VI_ERROR_NSUP_INTR (_VI_ERROR+0x3FFF009FL) /* BFFF009F, -1073807201 */ +#define VI_ERROR_INV_LINE (_VI_ERROR+0x3FFF00A0L) /* BFFF00A0, -1073807200 */ +#define VI_ERROR_FILE_ACCESS (_VI_ERROR+0x3FFF00A1L) /* BFFF00A1, -1073807199 */ +#define VI_ERROR_FILE_IO (_VI_ERROR+0x3FFF00A2L) /* BFFF00A2, -1073807198 */ +#define VI_ERROR_NSUP_LINE (_VI_ERROR+0x3FFF00A3L) /* BFFF00A3, -1073807197 */ +#define VI_ERROR_NSUP_MECH (_VI_ERROR+0x3FFF00A4L) /* BFFF00A4, -1073807196 */ +#define VI_ERROR_INTF_NUM_NCONFIG (_VI_ERROR+0x3FFF00A5L) /* BFFF00A5, -1073807195 */ +#define VI_ERROR_CONN_LOST (_VI_ERROR+0x3FFF00A6L) /* BFFF00A6, -1073807194 */ +#define VI_ERROR_MACHINE_NAVAIL (_VI_ERROR+0x3FFF00A7L) /* BFFF00A7, -1073807193 */ +#define VI_ERROR_NPERMISSION (_VI_ERROR+0x3FFF00A8L) /* BFFF00A8, -1073807192 */ + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_VERSION_MAJOR(ver) ((((ViVersion)ver) & 0xFFF00000UL) >> 20) +#define VI_VERSION_MINOR(ver) ((((ViVersion)ver) & 0x000FFF00UL) >> 8) +#define VI_VERSION_SUBMINOR(ver) ((((ViVersion)ver) & 0x000000FFUL) ) + +#define VI_FIND_BUFLEN (256) + +#define VI_INTF_GPIB (1) +#define VI_INTF_VXI (2) +#define VI_INTF_GPIB_VXI (3) +#define VI_INTF_ASRL (4) +#define VI_INTF_PXI (5) +#define VI_INTF_TCPIP (6) +#define VI_INTF_USB (7) + +#define VI_PROT_NORMAL (1) +#define VI_PROT_FDC (2) +#define VI_PROT_HS488 (3) +#define VI_PROT_4882_STRS (4) +#define VI_PROT_USBTMC_VENDOR (5) + +#define VI_FDC_NORMAL (1) +#define VI_FDC_STREAM (2) + +#define VI_LOCAL_SPACE (0) +#define VI_A16_SPACE (1) +#define VI_A24_SPACE (2) +#define VI_A32_SPACE (3) +#define VI_A64_SPACE (4) +#define VI_PXI_ALLOC_SPACE (9) +#define VI_PXI_CFG_SPACE (10) +#define VI_PXI_BAR0_SPACE (11) +#define VI_PXI_BAR1_SPACE (12) +#define VI_PXI_BAR2_SPACE (13) +#define VI_PXI_BAR3_SPACE (14) +#define VI_PXI_BAR4_SPACE (15) +#define VI_PXI_BAR5_SPACE (16) +#define VI_OPAQUE_SPACE (0xFFFF) + +#define VI_UNKNOWN_LA (-1) +#define VI_UNKNOWN_SLOT (-1) +#define VI_UNKNOWN_LEVEL (-1) +#define VI_UNKNOWN_CHASSIS (-1) + +#define VI_QUEUE (1) +#define VI_HNDLR (2) +#define VI_SUSPEND_HNDLR (4) +#define VI_ALL_MECH (0xFFFF) + +#define VI_ANY_HNDLR (0) + +#define VI_TRIG_ALL (-2) +#define VI_TRIG_SW (-1) +#define VI_TRIG_TTL0 (0) +#define VI_TRIG_TTL1 (1) +#define VI_TRIG_TTL2 (2) +#define VI_TRIG_TTL3 (3) +#define VI_TRIG_TTL4 (4) +#define VI_TRIG_TTL5 (5) +#define VI_TRIG_TTL6 (6) +#define VI_TRIG_TTL7 (7) +#define VI_TRIG_ECL0 (8) +#define VI_TRIG_ECL1 (9) +#define VI_TRIG_ECL2 (10) +#define VI_TRIG_ECL3 (11) +#define VI_TRIG_ECL4 (12) +#define VI_TRIG_ECL5 (13) +#define VI_TRIG_STAR_SLOT1 (14) +#define VI_TRIG_STAR_SLOT2 (15) +#define VI_TRIG_STAR_SLOT3 (16) +#define VI_TRIG_STAR_SLOT4 (17) +#define VI_TRIG_STAR_SLOT5 (18) +#define VI_TRIG_STAR_SLOT6 (19) +#define VI_TRIG_STAR_SLOT7 (20) +#define VI_TRIG_STAR_SLOT8 (21) +#define VI_TRIG_STAR_SLOT9 (22) +#define VI_TRIG_STAR_SLOT10 (23) +#define VI_TRIG_STAR_SLOT11 (24) +#define VI_TRIG_STAR_SLOT12 (25) +#define VI_TRIG_STAR_INSTR (26) +#define VI_TRIG_PANEL_IN (27) +#define VI_TRIG_PANEL_OUT (28) +#define VI_TRIG_STAR_VXI0 (29) +#define VI_TRIG_STAR_VXI1 (30) +#define VI_TRIG_STAR_VXI2 (31) +#define VI_TRIG_TTL8 (32) +#define VI_TRIG_TTL9 (33) +#define VI_TRIG_TTL10 (34) +#define VI_TRIG_TTL11 (35) + +#define VI_TRIG_PROT_DEFAULT (0) +#define VI_TRIG_PROT_ON (1) +#define VI_TRIG_PROT_OFF (2) +#define VI_TRIG_PROT_SYNC (5) +#define VI_TRIG_PROT_RESERVE (6) +#define VI_TRIG_PROT_UNRESERVE (7) + +#define VI_READ_BUF (1) +#define VI_WRITE_BUF (2) +#define VI_READ_BUF_DISCARD (4) +#define VI_WRITE_BUF_DISCARD (8) +#define VI_IO_IN_BUF (16) +#define VI_IO_OUT_BUF (32) +#define VI_IO_IN_BUF_DISCARD (64) +#define VI_IO_OUT_BUF_DISCARD (128) + +#define VI_FLUSH_ON_ACCESS (1) +#define VI_FLUSH_WHEN_FULL (2) +#define VI_FLUSH_DISABLE (3) + +#define VI_NMAPPED (1) +#define VI_USE_OPERS (2) +#define VI_DEREF_ADDR (3) +#define VI_DEREF_ADDR_BYTE_SWAP (4) + +#define VI_TMO_IMMEDIATE (0L) +#define VI_TMO_INFINITE (0xFFFFFFFFUL) + +#define VI_NO_LOCK (0) +#define VI_EXCLUSIVE_LOCK (1) +#define VI_SHARED_LOCK (2) +#define VI_LOAD_CONFIG (4) + +#define VI_NO_SEC_ADDR (0xFFFF) + +#define VI_ASRL_PAR_NONE (0) +#define VI_ASRL_PAR_ODD (1) +#define VI_ASRL_PAR_EVEN (2) +#define VI_ASRL_PAR_MARK (3) +#define VI_ASRL_PAR_SPACE (4) + +#define VI_ASRL_STOP_ONE (10) +#define VI_ASRL_STOP_ONE5 (15) +#define VI_ASRL_STOP_TWO (20) + +#define VI_ASRL_FLOW_NONE (0) +#define VI_ASRL_FLOW_XON_XOFF (1) +#define VI_ASRL_FLOW_RTS_CTS (2) +#define VI_ASRL_FLOW_DTR_DSR (4) + +#define VI_ASRL_END_NONE (0) +#define VI_ASRL_END_LAST_BIT (1) +#define VI_ASRL_END_TERMCHAR (2) +#define VI_ASRL_END_BREAK (3) + +#define VI_STATE_ASSERTED (1) +#define VI_STATE_UNASSERTED (0) +#define VI_STATE_UNKNOWN (-1) + +#define VI_BIG_ENDIAN (0) +#define VI_LITTLE_ENDIAN (1) + +#define VI_DATA_PRIV (0) +#define VI_DATA_NPRIV (1) +#define VI_PROG_PRIV (2) +#define VI_PROG_NPRIV (3) +#define VI_BLCK_PRIV (4) +#define VI_BLCK_NPRIV (5) +#define VI_D64_PRIV (6) +#define VI_D64_NPRIV (7) +#define VI_D64_2EVME (8) +#define VI_D64_SST160 (9) +#define VI_D64_SST267 (10) +#define VI_D64_SST320 (11) + +#define VI_WIDTH_8 (1) +#define VI_WIDTH_16 (2) +#define VI_WIDTH_32 (4) +#define VI_WIDTH_64 (8) + +#define VI_GPIB_REN_DEASSERT (0) +#define VI_GPIB_REN_ASSERT (1) +#define VI_GPIB_REN_DEASSERT_GTL (2) +#define VI_GPIB_REN_ASSERT_ADDRESS (3) +#define VI_GPIB_REN_ASSERT_LLO (4) +#define VI_GPIB_REN_ASSERT_ADDRESS_LLO (5) +#define VI_GPIB_REN_ADDRESS_GTL (6) + +#define VI_GPIB_ATN_DEASSERT (0) +#define VI_GPIB_ATN_ASSERT (1) +#define VI_GPIB_ATN_DEASSERT_HANDSHAKE (2) +#define VI_GPIB_ATN_ASSERT_IMMEDIATE (3) + +#define VI_GPIB_HS488_DISABLED (0) +#define VI_GPIB_HS488_NIMPL (-1) + +#define VI_GPIB_UNADDRESSED (0) +#define VI_GPIB_TALKER (1) +#define VI_GPIB_LISTENER (2) + +#define VI_VXI_CMD16 (0x0200) +#define VI_VXI_CMD16_RESP16 (0x0202) +#define VI_VXI_RESP16 (0x0002) +#define VI_VXI_CMD32 (0x0400) +#define VI_VXI_CMD32_RESP16 (0x0402) +#define VI_VXI_CMD32_RESP32 (0x0404) +#define VI_VXI_RESP32 (0x0004) + +#define VI_ASSERT_SIGNAL (-1) +#define VI_ASSERT_USE_ASSIGNED (0) +#define VI_ASSERT_IRQ1 (1) +#define VI_ASSERT_IRQ2 (2) +#define VI_ASSERT_IRQ3 (3) +#define VI_ASSERT_IRQ4 (4) +#define VI_ASSERT_IRQ5 (5) +#define VI_ASSERT_IRQ6 (6) +#define VI_ASSERT_IRQ7 (7) + +#define VI_UTIL_ASSERT_SYSRESET (1) +#define VI_UTIL_ASSERT_SYSFAIL (2) +#define VI_UTIL_DEASSERT_SYSFAIL (3) + +#define VI_VXI_CLASS_MEMORY (0) +#define VI_VXI_CLASS_EXTENDED (1) +#define VI_VXI_CLASS_MESSAGE (2) +#define VI_VXI_CLASS_REGISTER (3) +#define VI_VXI_CLASS_OTHER (4) + +#define VI_PXI_ADDR_NONE (0) +#define VI_PXI_ADDR_MEM (1) +#define VI_PXI_ADDR_IO (2) +#define VI_PXI_ADDR_CFG (3) + +#define VI_TRIG_UNKNOWN (-1) + +#define VI_PXI_LBUS_UNKNOWN (-1) +#define VI_PXI_LBUS_NONE (0) +#define VI_PXI_LBUS_STAR_TRIG_BUS_0 (1000) +#define VI_PXI_LBUS_STAR_TRIG_BUS_1 (1001) +#define VI_PXI_LBUS_STAR_TRIG_BUS_2 (1002) +#define VI_PXI_LBUS_STAR_TRIG_BUS_3 (1003) +#define VI_PXI_LBUS_STAR_TRIG_BUS_4 (1004) +#define VI_PXI_LBUS_STAR_TRIG_BUS_5 (1005) +#define VI_PXI_LBUS_STAR_TRIG_BUS_6 (1006) +#define VI_PXI_LBUS_STAR_TRIG_BUS_7 (1007) +#define VI_PXI_LBUS_STAR_TRIG_BUS_8 (1008) +#define VI_PXI_LBUS_STAR_TRIG_BUS_9 (1009) +#define VI_PXI_STAR_TRIG_CONTROLLER (1413) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define viGetDefaultRM(vi) viOpenDefaultRM(vi) +#define VI_ERROR_INV_SESSION (VI_ERROR_INV_OBJECT) +#define VI_INFINITE (VI_TMO_INFINITE) +#define VI_NORMAL (VI_PROT_NORMAL) +#define VI_FDC (VI_PROT_FDC) +#define VI_HS488 (VI_PROT_HS488) +#define VI_ASRL488 (VI_PROT_4882_STRS) +#define VI_ASRL_IN_BUF (VI_IO_IN_BUF) +#define VI_ASRL_OUT_BUF (VI_IO_OUT_BUF) +#define VI_ASRL_IN_BUF_DISCARD (VI_IO_IN_BUF_DISCARD) +#define VI_ASRL_OUT_BUF_DISCARD (VI_IO_OUT_BUF_DISCARD) + +/*- National Instruments ----------------------------------------------------*/ + +#if defined(_CVI_DEBUG_) +#pragma soft_reference (viGetAttribute); +#endif + +#define VI_ERROR_HW_NGENUINE (_VI_ERROR+0x3FFF00AAL) /* BFFF00AA, -1073807190 */ + +#define VI_INTF_RIO (8) +#define VI_INTF_FIREWIRE (9) + +#define VI_ATTR_SYNC_MXI_ALLOW_EN (0x3FFF0161UL) /* ViBoolean, read/write */ + +/* This is for VXI SERVANT resources */ + +#define VI_EVENT_VXI_DEV_CMD (0xBFFF200FUL) +#define VI_ATTR_VXI_DEV_CMD_TYPE (0x3FFF4037UL) /* ViInt16, read-only */ +#define VI_ATTR_VXI_DEV_CMD_VALUE (0x3FFF4038UL) /* ViUInt32, read-only */ + +#define VI_VXI_DEV_CMD_TYPE_16 (16) +#define VI_VXI_DEV_CMD_TYPE_32 (32) + +ViStatus _VI_FUNC viVxiServantResponse(ViSession vi, ViInt16 mode, ViUInt32 resp); +/* mode values include VI_VXI_RESP16, VI_VXI_RESP32, and the next 2 values */ +#define VI_VXI_RESP_NONE (0) +#define VI_VXI_RESP_PROT_ERROR (-1) + +/* This is for VXI TTL Trigger routing */ + +#define VI_ATTR_VXI_TRIG_LINES_EN (0x3FFF4043UL) +#define VI_ATTR_VXI_TRIG_DIR (0x3FFF4044UL) + +/* This allows extended Serial support on Win32 and on NI ENET Serial products */ + +#define VI_ATTR_ASRL_DISCARD_NULL (0x3FFF00B0UL) +#define VI_ATTR_ASRL_CONNECTED (0x3FFF01BBUL) +#define VI_ATTR_ASRL_BREAK_STATE (0x3FFF01BCUL) +#define VI_ATTR_ASRL_BREAK_LEN (0x3FFF01BDUL) +#define VI_ATTR_ASRL_ALLOW_TRANSMIT (0x3FFF01BEUL) +#define VI_ATTR_ASRL_WIRE_MODE (0x3FFF01BFUL) + +#define VI_ASRL_WIRE_485_4 (0) +#define VI_ASRL_WIRE_485_2_DTR_ECHO (1) +#define VI_ASRL_WIRE_485_2_DTR_CTRL (2) +#define VI_ASRL_WIRE_485_2_AUTO (3) +#define VI_ASRL_WIRE_232_DTE (128) +#define VI_ASRL_WIRE_232_DCE (129) +#define VI_ASRL_WIRE_232_AUTO (130) + +#define VI_EVENT_ASRL_BREAK (0x3FFF2023UL) +#define VI_EVENT_ASRL_CTS (0x3FFF2029UL) +#define VI_EVENT_ASRL_DSR (0x3FFF202AUL) +#define VI_EVENT_ASRL_DCD (0x3FFF202CUL) +#define VI_EVENT_ASRL_RI (0x3FFF202EUL) +#define VI_EVENT_ASRL_CHAR (0x3FFF2035UL) +#define VI_EVENT_ASRL_TERMCHAR (0x3FFF2024UL) + +/* This is for fast viPeek/viPoke macros */ + +#if defined(NIVISA_PEEKPOKE) + +#if defined(NIVISA_PEEKPOKE_SUPP) +#undef NIVISA_PEEKPOKE_SUPP +#endif + +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +/* This macro is supported for all Win32 compilers, including CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_CVI_) && !defined(_NI_mswin16_) +/* This macro is supported for Borland and Microsoft compilers on Win16, but not CVI. */ +#define NIVISA_PEEKPOKE_SUPP +#elif defined(_CVI_) && defined(_NI_sparc_) +/* This macro is supported for Solaris 1 and 2, from CVI only. */ +#define NIVISA_PEEKPOKE_SUPP +#else +/* This macro is not supported on other platforms. */ +#endif + +#if defined(NIVISA_PEEKPOKE_SUPP) + +extern ViBoolean NI_viImplVISA1; +ViStatus _VI_FUNC NI_viOpenDefaultRM (ViPSession vi); +#define viOpenDefaultRM(vi) NI_viOpenDefaultRM(vi) + +#define viPeek8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt8)(val)) = *((volatile ViUInt8 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek8)((vi),(addr),(val)); \ + } \ + } + +#define viPoke8(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt8 _VI_PTR)(addr)) = ((ViUInt8)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke8)((vi),(addr),(val)); \ + } \ + } + +#define viPeek16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt16)(val)) = *((volatile ViUInt16 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek16)((vi),(addr),(val)); \ + } \ + } + +#define viPoke16(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt16 _VI_PTR)(addr)) = ((ViUInt16)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke16)((vi),(addr),(val)); \ + } \ + } + +#define viPeek32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((ViPUInt32)(val)) = *((volatile ViUInt32 _VI_PTR)(addr))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPeek32)((vi),(addr),(val)); \ + } \ + } + +#define viPoke32(vi,addr,val) \ + { \ + if ((NI_viImplVISA1) && (*((ViPUInt32)(vi)))) \ + { \ + do (*((volatile ViUInt32 _VI_PTR)(addr)) = ((ViUInt32)(val))); \ + while (**((volatile ViUInt8 _VI_PTR _VI_PTR)(vi)) & 0x10); \ + } \ + else \ + { \ + (viPoke32)((vi),(addr),(val)); \ + } \ + } + +#endif + +#endif + +#if defined(NIVISA_PXI) || defined(PXISAVISA_PXI) + +#if 0 +/* The following 2 attributes were incorrectly implemented in earlier + versions of NI-VISA. You should now query VI_ATTR_MANF_ID or + VI_ATTR_MODEL_CODE. Those attributes contain sub-vendor information + when it exists. To get both the actual primary and subvendor codes + from the device, you should call viIn16 using VI_PXI_CFG_SPACE. */ +#define VI_ATTR_PXI_SUB_MANF_ID (0x3FFF0203UL) +#define VI_ATTR_PXI_SUB_MODEL_CODE (0x3FFF0204UL) +#endif + +#define VI_ATTR_PXI_USE_PREALLOC_POOL (0x3FFF020FUL) +#endif + +#if defined(NIVISA_USB) + +#define VI_ATTR_USB_BULK_OUT_PIPE (0x3FFF01A2UL) +#define VI_ATTR_USB_BULK_IN_PIPE (0x3FFF01A3UL) +#define VI_ATTR_USB_INTR_IN_PIPE (0x3FFF01A4UL) +#define VI_ATTR_USB_CLASS (0x3FFF01A5UL) +#define VI_ATTR_USB_SUBCLASS (0x3FFF01A6UL) +#define VI_ATTR_USB_ALT_SETTING (0x3FFF01A8UL) +#define VI_ATTR_USB_END_IN (0x3FFF01A9UL) +#define VI_ATTR_USB_NUM_INTFCS (0x3FFF01AAUL) +#define VI_ATTR_USB_NUM_PIPES (0x3FFF01ABUL) +#define VI_ATTR_USB_BULK_OUT_STATUS (0x3FFF01ACUL) +#define VI_ATTR_USB_BULK_IN_STATUS (0x3FFF01ADUL) +#define VI_ATTR_USB_INTR_IN_STATUS (0x3FFF01AEUL) +#define VI_ATTR_USB_CTRL_PIPE (0x3FFF01B0UL) + +#define VI_USB_PIPE_STATE_UNKNOWN (-1) +#define VI_USB_PIPE_READY (0) +#define VI_USB_PIPE_STALLED (1) + +#define VI_USB_END_NONE (0) +#define VI_USB_END_SHORT (4) +#define VI_USB_END_SHORT_OR_COUNT (5) + +#endif + +#define VI_ATTR_FIREWIRE_DEST_UPPER_OFFSET (0x3FFF01F0UL) +#define VI_ATTR_FIREWIRE_SRC_UPPER_OFFSET (0x3FFF01F1UL) +#define VI_ATTR_FIREWIRE_WIN_UPPER_OFFSET (0x3FFF01F2UL) +#define VI_ATTR_FIREWIRE_VENDOR_ID (0x3FFF01F3UL) +#define VI_ATTR_FIREWIRE_LOWER_CHIP_ID (0x3FFF01F4UL) +#define VI_ATTR_FIREWIRE_UPPER_CHIP_ID (0x3FFF01F5UL) + +#define VI_FIREWIRE_DFLT_SPACE (5) + +#if defined(__cplusplus) || defined(__cplusplus__) + } +#endif + +#endif + +/*- The End -----------------------------------------------------------------*/ diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas new file mode 100644 index 0000000..c137ce5 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visa32.bas @@ -0,0 +1,525 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VISA32.BAS +' Date : 01-14-2003 +' Purpose : Include file for the VISA Library 3.0 spec +' ------------------------------------------------------------------------- + +Global Const VI_SPEC_VERSION = &H00300000& + +' - Resource Template Functions and Operations ---------------------------- + +Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long +Declare Function viGetDefaultRM Lib "VISA32.DLL" Alias "#128" (sesn As Long) As Long +Declare Function viFindRsrc Lib "VISA32.DLL" Alias "#129" (ByVal sesn As Long, ByVal expr As String, vi As Long, retCount As Long, ByVal desc As String) As Long +Declare Function viFindNext Lib "VISA32.DLL" Alias "#130" (ByVal vi As Long, ByVal desc As String) As Long +Declare Function viParseRsrc Lib "VISA32.DLL" Alias "#146" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer) As Long +Declare Function viParseRsrcEx Lib "VISA32.DLL" Alias "#147" (ByVal sesn As Long, ByVal desc As String, intfType As Integer, intfNum As Integer, ByVal rsrcClass As String, ByVal expandedUnaliasedName As String, ByVal aliasIfExists As String) As Long +Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, ByVal viDesc As String, ByVal mode As Long, ByVal timeout As Long, vi As Long) As Long +Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long +Declare Function viGetAttribute Lib "VISA32.DLL" Alias "#133" (ByVal vi As Long, ByVal attrName As Long, attrValue As Any) As Long +Declare Function viSetAttribute Lib "VISA32.DLL" Alias "#134" (ByVal vi As Long, ByVal attrName As Long, ByVal attrValue As Long) As Long +Declare Function viStatusDesc Lib "VISA32.DLL" Alias "#142" (ByVal vi As Long, ByVal status As Long, ByVal desc As String) As Long +Declare Function viLock Lib "VISA32.DLL" Alias "#144" (ByVal vi As Long, ByVal lockType As Long, ByVal timeout As Long, ByVal requestedKey As String, ByVal accessKey As String) As Long +Declare Function viUnlock Lib "VISA32.DLL" Alias "#145" (ByVal vi As Long) As Long +Declare Function viEnableEvent Lib "VISA32.DLL" Alias "#135" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer, ByVal context As Long) As Long +Declare Function viDisableEvent Lib "VISA32.DLL" Alias "#136" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viDiscardEvents Lib "VISA32.DLL" Alias "#137" (ByVal vi As Long, ByVal eventType As Long, ByVal mechanism As Integer) As Long +Declare Function viWaitOnEvent Lib "VISA32.DLL" Alias "#138" (ByVal vi As Long, ByVal inEventType As Long, ByVal timeout As Long, outEventType As Long, outEventContext As Long) As Long + +' - Basic I/O Operations -------------------------------------------------- + +Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viReadToFile Lib "VISA32.DLL" Alias "#219" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viWriteFromFile Lib "VISA32.DLL" Alias "#218" (ByVal vi As Long, ByVal filename As String, ByVal count As Long, retCount As Long) As Long +Declare Function viAssertTrigger Lib "VISA32.DLL" Alias "#258"(ByVal vi As Long, ByVal protocol As Integer) As Long +Declare Function viReadSTB Lib "VISA32.DLL" Alias "#259" (ByVal vi As Long, status As Integer) As Long +Declare Function viClear Lib "VISA32.DLL" Alias "#260" (ByVal vi As Long) As Long + +' - Formatted and Buffered I/O Operations --------------------------------- + +Declare Function viSetBuf Lib "VISA32.DLL" Alias "#267" (ByVal vi As Long, ByVal mask As Integer, ByVal bufSize As Long) As Long +Declare Function viFlush Lib "VISA32.DLL" Alias "#268" (ByVal vi As Long, ByVal mask As Integer) As Long +Declare Function viBufWrite Lib "VISA32.DLL" Alias "#202" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viBufRead Lib "VISA32.DLL" Alias "#203" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viVPrintf Lib "VISA32.DLL" Alias "#270" (ByVal vi As Long, ByVal writeFmt As String, params As Any) As Long +Declare Function viVSPrintf Lib "VISA32.DLL" Alias "#205" (ByVal vi As Long, ByVal Buffer As String, ByVal writeFmt As String, params As Any) As Long +Declare Function viVScanf Lib "VISA32.DLL" Alias "#272" (ByVal vi As Long, ByVal readFmt As String, params As Any) As Long +Declare Function viVSScanf Lib "VISA32.DLL" Alias "#207" (ByVal vi As Long, ByVal Buffer As String, ByVal readFmt As String, params As Any) As Long +Declare Function viVQueryf Lib "VISA32.DLL" Alias "#280" (ByVal vi As Long, ByVal writeFmt As String, ByVal readFmt As String, params As Any) As Long + +' - Memory I/O Operations ------------------------------------------------- + +Declare Function viIn8 Lib "VISA32.DLL" Alias "#273" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val8 As Byte) As Long +Declare Function viOut8 Lib "VISA32.DLL" Alias "#274" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val8 As Byte) As Long +Declare Function viIn16 Lib "VISA32.DLL" Alias "#261" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val16 As Integer) As Long +Declare Function viOut16 Lib "VISA32.DLL" Alias "#262" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val16 As Integer) As Long +Declare Function viIn32 Lib "VISA32.DLL" Alias "#281" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, val32 As Long) As Long +Declare Function viOut32 Lib "VISA32.DLL" Alias "#282" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal val32 As Long) As Long +Declare Function viMoveIn8 Lib "VISA32.DLL" Alias "#283" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveOut8 Lib "VISA32.DLL" Alias "#284" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf8 As Byte) As Long +Declare Function viMoveIn16 Lib "VISA32.DLL" Alias "#285" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveOut16 Lib "VISA32.DLL" Alias "#286" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf16 As Integer) As Long +Declare Function viMoveIn32 Lib "VISA32.DLL" Alias "#287" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMoveOut32 Lib "VISA32.DLL" Alias "#288" (ByVal vi As Long, ByVal accSpace As Integer, ByVal offset As Long, ByVal length As Long, buf32 As Long) As Long +Declare Function viMove Lib "VISA32.DLL" Alias "#200" (ByVal vi As Long, ByVal srcSpace As Integer, ByVal srcOffset As Long, ByVal srcWidth As Integer, ByVal destSpace As Integer, ByVal destOffset As Long, ByVal destWidth As Integer, ByVal srcLength As Long) As Long +Declare Function viMapAddress Lib "VISA32.DLL" Alias "#263" (ByVal vi As Long, ByVal mapSpace As Integer, ByVal mapOffset As Long, ByVal mapSize As Long, ByVal accMode As Integer, ByVal suggested As Long, address As Long) As Long +Declare Function viUnmapAddress Lib "VISA32.DLL" Alias "#264" (ByVal vi As Long) As Long +Declare Sub viPeek8 Lib "VISA32.DLL" Alias "#275" (ByVal vi As Long, ByVal address As Long, val8 As Byte) +Declare Sub viPoke8 Lib "VISA32.DLL" Alias "#276" (ByVal vi As Long, ByVal address As Long, ByVal val8 As Byte) +Declare Sub viPeek16 Lib "VISA32.DLL" Alias "#265" (ByVal vi As Long, ByVal address As Long, val16 As Integer) +Declare Sub viPoke16 Lib "VISA32.DLL" Alias "#266" (ByVal vi As Long, ByVal address As Long, ByVal val16 As Integer) +Declare Sub viPeek32 Lib "VISA32.DLL" Alias "#289" (ByVal vi As Long, ByVal address As Long, val32 As Long) +Declare Sub viPoke32 Lib "VISA32.DLL" Alias "#290" (ByVal vi As Long, ByVal address As Long, ByVal val32 As Long) + +' - Shared Memory Operations ---------------------------------------------- + +Declare Function viMemAlloc Lib "VISA32.DLL" Alias "#291" (ByVal vi As Long, ByVal memSize As Long, offset As Long) As Long +Declare Function viMemFree Lib "VISA32.DLL" Alias "#292" (ByVal vi As Long, ByVal offset As Long) As Long + +' - Interface Specific Operations ----------------------------------------- + +Declare Function viGpibControlREN Lib "VISA32.DLL" Alias "#208" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibControlATN Lib "VISA32.DLL" Alias "#210" (ByVal vi As Long, ByVal mode As Integer) As Long +Declare Function viGpibSendIFC Lib "VISA32.DLL" Alias "#211" (ByVal vi As Long) As Long +Declare Function viGpibCommand Lib "VISA32.DLL" Alias "#212" (ByVal vi As Long, ByVal Buffer As String, ByVal count As Long, retCount As Long) As Long +Declare Function viGpibPassControl Lib "VISA32.DLL" Alias "#213" (ByVal vi As Long, ByVal primAddr As Integer, ByVal secAddr As Integer) As Long +Declare Function viVxiCommandQuery Lib "VISA32.DLL" Alias "#209" (ByVal vi As Long, ByVal mode As Integer, ByVal devCmd As Long, devResponse As Long) As Long +Declare Function viAssertUtilSignal Lib "VISA32.DLL" Alias "#214" (ByVal vi As Long, ByVal line As Integer) As Long +Declare Function viAssertIntrSignal Lib "VISA32.DLL" Alias "#215" (ByVal vi As Long, ByVal mode As Integer, ByVal statusID As Long) As Long +Declare Function viMapTrigger Lib "VISA32.DLL" Alias "#216" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer, ByVal mode As Integer) As Long +Declare Function viUnmapTrigger Lib "VISA32.DLL" Alias "#217" (ByVal vi As Long, ByVal trigSrc As Integer, ByVal trigDest As Integer) As Long +Declare Function viUsbControlOut Lib "VISA32.DLL" Alias "#293" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte) As Long +Declare Function viUsbControlIn Lib "VISA32.DLL" Alias "#294" (ByVal vi As Long, ByVal bmRequestType As Integer, ByVal bRequest As Integer, ByVal wValue As Integer, ByVal wIndex As Integer, ByVal wLength As Integer, buf As Byte, retCnt As Integer) As Long + +' - Attributes ------------------------------------------------------------ + +Global Const VI_ATTR_RSRC_CLASS = &HBFFF0001& +Global Const VI_ATTR_RSRC_NAME = &HBFFF0002& +Global Const VI_ATTR_RSRC_IMPL_VERSION = &H3FFF0003& +Global Const VI_ATTR_RSRC_LOCK_STATE = &H3FFF0004& +Global Const VI_ATTR_MAX_QUEUE_LENGTH = &H3FFF0005& +Global Const VI_ATTR_USER_DATA = &H3FFF0007& +Global Const VI_ATTR_FDC_CHNL = &H3FFF000D& +Global Const VI_ATTR_FDC_MODE = &H3FFF000F& +Global Const VI_ATTR_FDC_GEN_SIGNAL_EN = &H3FFF0011& +Global Const VI_ATTR_FDC_USE_PAIR = &H3FFF0013& +Global Const VI_ATTR_SEND_END_EN = &H3FFF0016& +Global Const VI_ATTR_TERMCHAR = &H3FFF0018& +Global Const VI_ATTR_TMO_VALUE = &H3FFF001A& +Global Const VI_ATTR_GPIB_READDR_EN = &H3FFF001B& +Global Const VI_ATTR_IO_PROT = &H3FFF001C& +Global Const VI_ATTR_DMA_ALLOW_EN = &H3FFF001E& +Global Const VI_ATTR_ASRL_BAUD = &H3FFF0021& +Global Const VI_ATTR_ASRL_DATA_BITS = &H3FFF0022& +Global Const VI_ATTR_ASRL_PARITY = &H3FFF0023& +Global Const VI_ATTR_ASRL_STOP_BITS = &H3FFF0024& +Global Const VI_ATTR_ASRL_FLOW_CNTRL = &H3FFF0025& +Global Const VI_ATTR_RD_BUF_OPER_MODE = &H3FFF002A& +Global Const VI_ATTR_RD_BUF_SIZE = &H3FFF002B& +Global Const VI_ATTR_WR_BUF_OPER_MODE = &H3FFF002D& +Global Const VI_ATTR_WR_BUF_SIZE = &H3FFF002E& +Global Const VI_ATTR_SUPPRESS_END_EN = &H3FFF0036& +Global Const VI_ATTR_TERMCHAR_EN = &H3FFF0038& +Global Const VI_ATTR_DEST_ACCESS_PRIV = &H3FFF0039& +Global Const VI_ATTR_DEST_BYTE_ORDER = &H3FFF003A& +Global Const VI_ATTR_SRC_ACCESS_PRIV = &H3FFF003C& +Global Const VI_ATTR_SRC_BYTE_ORDER = &H3FFF003D& +Global Const VI_ATTR_SRC_INCREMENT = &H3FFF0040& +Global Const VI_ATTR_DEST_INCREMENT = &H3FFF0041& +Global Const VI_ATTR_WIN_ACCESS_PRIV = &H3FFF0045& +Global Const VI_ATTR_WIN_BYTE_ORDER = &H3FFF0047& +Global Const VI_ATTR_GPIB_ATN_STATE = &H3FFF0057& +Global Const VI_ATTR_GPIB_ADDR_STATE = &H3FFF005C& +Global Const VI_ATTR_GPIB_CIC_STATE = &H3FFF005E& +Global Const VI_ATTR_GPIB_NDAC_STATE = &H3FFF0062& +Global Const VI_ATTR_GPIB_SRQ_STATE = &H3FFF0067& +Global Const VI_ATTR_GPIB_SYS_CNTRL_STATE = &H3FFF0068& +Global Const VI_ATTR_GPIB_HS488_CBL_LEN = &H3FFF0069& +Global Const VI_ATTR_CMDR_LA = &H3FFF006B& +Global Const VI_ATTR_VXI_DEV_CLASS = &H3FFF006C& +Global Const VI_ATTR_MAINFRAME_LA = &H3FFF0070& +Global Const VI_ATTR_MANF_NAME = &HBFFF0072& +Global Const VI_ATTR_MODEL_NAME = &HBFFF0077& +Global Const VI_ATTR_VXI_VME_INTR_STATUS = &H3FFF008B& +Global Const VI_ATTR_VXI_TRIG_STATUS = &H3FFF008D& +Global Const VI_ATTR_VXI_VME_SYSFAIL_STATE = &H3FFF0094& +Global Const VI_ATTR_WIN_BASE_ADDR = &H3FFF0098& +Global Const VI_ATTR_WIN_SIZE = &H3FFF009A& +Global Const VI_ATTR_ASRL_AVAIL_NUM = &H3FFF00AC& +Global Const VI_ATTR_MEM_BASE = &H3FFF00AD& +Global Const VI_ATTR_ASRL_CTS_STATE = &H3FFF00AE& +Global Const VI_ATTR_ASRL_DCD_STATE = &H3FFF00AF& +Global Const VI_ATTR_ASRL_DSR_STATE = &H3FFF00B1& +Global Const VI_ATTR_ASRL_DTR_STATE = &H3FFF00B2& +Global Const VI_ATTR_ASRL_END_IN = &H3FFF00B3& +Global Const VI_ATTR_ASRL_END_OUT = &H3FFF00B4& +Global Const VI_ATTR_ASRL_REPLACE_CHAR = &H3FFF00BE& +Global Const VI_ATTR_ASRL_RI_STATE = &H3FFF00BF& +Global Const VI_ATTR_ASRL_RTS_STATE = &H3FFF00C0& +Global Const VI_ATTR_ASRL_XON_CHAR = &H3FFF00C1& +Global Const VI_ATTR_ASRL_XOFF_CHAR = &H3FFF00C2& +Global Const VI_ATTR_WIN_ACCESS = &H3FFF00C3& +Global Const VI_ATTR_RM_SESSION = &H3FFF00C4& +Global Const VI_ATTR_VXI_LA = &H3FFF00D5& +Global Const VI_ATTR_MANF_ID = &H3FFF00D9& +Global Const VI_ATTR_MEM_SIZE = &H3FFF00DD& +Global Const VI_ATTR_MEM_SPACE = &H3FFF00DE& +Global Const VI_ATTR_MODEL_CODE = &H3FFF00DF& +Global Const VI_ATTR_SLOT = &H3FFF00E8& +Global Const VI_ATTR_INTF_INST_NAME = &HBFFF00E9& +Global Const VI_ATTR_IMMEDIATE_SERV = &H3FFF0100& +Global Const VI_ATTR_INTF_PARENT_NUM = &H3FFF0101& +Global Const VI_ATTR_RSRC_SPEC_VERSION = &H3FFF0170& +Global Const VI_ATTR_INTF_TYPE = &H3FFF0171& +Global Const VI_ATTR_GPIB_PRIMARY_ADDR = &H3FFF0172& +Global Const VI_ATTR_GPIB_SECONDARY_ADDR = &H3FFF0173& +Global Const VI_ATTR_RSRC_MANF_NAME = &HBFFF0174& +Global Const VI_ATTR_RSRC_MANF_ID = &H3FFF0175& +Global Const VI_ATTR_INTF_NUM = &H3FFF0176& +Global Const VI_ATTR_TRIG_ID = &H3FFF0177& +Global Const VI_ATTR_GPIB_REN_STATE = &H3FFF0181& +Global Const VI_ATTR_GPIB_UNADDR_EN = &H3FFF0184& +Global Const VI_ATTR_DEV_STATUS_BYTE = &H3FFF0189& +Global Const VI_ATTR_FILE_APPEND_EN = &H3FFF0192& +Global Const VI_ATTR_VXI_TRIG_SUPPORT = &H3FFF0194& +Global Const VI_ATTR_TCPIP_ADDR = &HBFFF0195& +Global Const VI_ATTR_TCPIP_HOSTNAME = &HBFFF0196& +Global Const VI_ATTR_TCPIP_PORT = &H3FFF0197& +Global Const VI_ATTR_TCPIP_DEVICE_NAME = &HBFFF0199& +Global Const VI_ATTR_TCPIP_NODELAY = &H3FFF019A& +Global Const VI_ATTR_TCPIP_KEEPALIVE = &H3FFF019B& +Global Const VI_ATTR_4882_COMPLIANT = &H3FFF019F& +Global Const VI_ATTR_USB_SERIAL_NUM = &HBFFF01A0& +Global Const VI_ATTR_USB_INTFC_NUM = &H3FFF01A1& +Global Const VI_ATTR_USB_PROTOCOL = &H3FFF01A7& +Global Const VI_ATTR_USB_MAX_INTR_SIZE = &H3FFF01AF& + +Global Const VI_ATTR_JOB_ID = &H3FFF4006& +Global Const VI_ATTR_EVENT_TYPE = &H3FFF4010& +Global Const VI_ATTR_SIGP_STATUS_ID = &H3FFF4011& +Global Const VI_ATTR_RECV_TRIG_ID = &H3FFF4012& +Global Const VI_ATTR_INTR_STATUS_ID = &H3FFF4023& +Global Const VI_ATTR_STATUS = &H3FFF4025& +Global Const VI_ATTR_RET_COUNT = &H3FFF4026& +Global Const VI_ATTR_BUFFER = &H3FFF4027& +Global Const VI_ATTR_RECV_INTR_LEVEL = &H3FFF4041& +Global Const VI_ATTR_OPER_NAME = &HBFFF4042& +Global Const VI_ATTR_GPIB_RECV_CIC_STATE = &H3FFF4193& +Global Const VI_ATTR_RECV_TCPIP_ADDR = &HBFFF4198& +Global Const VI_ATTR_USB_RECV_INTR_SIZE = &H3FFF41B0& +Global Const VI_ATTR_USB_RECV_INTR_DATA = &HBFFF41B1& + +' - Event Types ----------------------------------------------------------- + +Global Const VI_EVENT_IO_COMPLETION = &H3FFF2009& +Global Const VI_EVENT_TRIG = &HBFFF200A& +Global Const VI_EVENT_SERVICE_REQ = &H3FFF200B& +Global Const VI_EVENT_CLEAR = &H3FFF200D& +Global Const VI_EVENT_EXCEPTION = &HBFFF200E& +Global Const VI_EVENT_GPIB_CIC = &H3FFF2012& +Global Const VI_EVENT_GPIB_TALK = &H3FFF2013& +Global Const VI_EVENT_GPIB_LISTEN = &H3FFF2014& +Global Const VI_EVENT_VXI_VME_SYSFAIL = &H3FFF201D& +Global Const VI_EVENT_VXI_VME_SYSRESET = &H3FFF201E& +Global Const VI_EVENT_VXI_SIGP = &H3FFF2020& +Global Const VI_EVENT_VXI_VME_INTR = &HBFFF2021& +Global Const VI_EVENT_TCPIP_CONNECT = &H3FFF2036& +Global Const VI_EVENT_USB_INTR = &H3FFF2037& + +Global Const VI_ALL_ENABLED_EVENTS = &H3FFF7FFF& + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_SUCCESS = &H0& +Global Const VI_SUCCESS_EVENT_EN = &H3FFF0002& +Global Const VI_SUCCESS_EVENT_DIS = &H3FFF0003& +Global Const VI_SUCCESS_QUEUE_EMPTY = &H3FFF0004& +Global Const VI_SUCCESS_TERM_CHAR = &H3FFF0005& +Global Const VI_SUCCESS_MAX_CNT = &H3FFF0006& +Global Const VI_SUCCESS_DEV_NPRESENT = &H3FFF007D& +Global Const VI_SUCCESS_TRIG_MAPPED = &H3FFF007E& +Global Const VI_SUCCESS_QUEUE_NEMPTY = &H3FFF0080& +Global Const VI_SUCCESS_NCHAIN = &H3FFF0098& +Global Const VI_SUCCESS_NESTED_SHARED = &H3FFF0099& +Global Const VI_SUCCESS_NESTED_EXCLUSIVE = &H3FFF009A& +Global Const VI_SUCCESS_SYNC = &H3FFF009B& + +Global Const VI_WARN_QUEUE_OVERFLOW = &H3FFF000C& +Global Const VI_WARN_CONFIG_NLOADED = &H3FFF0077& +Global Const VI_WARN_NULL_OBJECT = &H3FFF0082& +Global Const VI_WARN_NSUP_ATTR_STATE = &H3FFF0084& +Global Const VI_WARN_UNKNOWN_STATUS = &H3FFF0085& +Global Const VI_WARN_NSUP_BUF = &H3FFF0088& +Global Const VI_WARN_EXT_FUNC_NIMPL = &H3FFF00A9& + +Global Const VI_ERROR_SYSTEM_ERROR = &HBFFF0000& +Global Const VI_ERROR_INV_OBJECT = &HBFFF000E& +Global Const VI_ERROR_RSRC_LOCKED = &HBFFF000F& +Global Const VI_ERROR_INV_EXPR = &HBFFF0010& +Global Const VI_ERROR_RSRC_NFOUND = &HBFFF0011& +Global Const VI_ERROR_INV_RSRC_NAME = &HBFFF0012& +Global Const VI_ERROR_INV_ACC_MODE = &HBFFF0013& +Global Const VI_ERROR_TMO = &HBFFF0015& +Global Const VI_ERROR_CLOSING_FAILED = &HBFFF0016& +Global Const VI_ERROR_INV_DEGREE = &HBFFF001B& +Global Const VI_ERROR_INV_JOB_ID = &HBFFF001C& +Global Const VI_ERROR_NSUP_ATTR = &HBFFF001D& +Global Const VI_ERROR_NSUP_ATTR_STATE = &HBFFF001E& +Global Const VI_ERROR_ATTR_READONLY = &HBFFF001F& +Global Const VI_ERROR_INV_LOCK_TYPE = &HBFFF0020& +Global Const VI_ERROR_INV_ACCESS_KEY = &HBFFF0021& +Global Const VI_ERROR_INV_EVENT = &HBFFF0026& +Global Const VI_ERROR_INV_MECH = &HBFFF0027& +Global Const VI_ERROR_HNDLR_NINSTALLED = &HBFFF0028& +Global Const VI_ERROR_INV_HNDLR_REF = &HBFFF0029& +Global Const VI_ERROR_INV_CONTEXT = &HBFFF002A& +Global Const VI_ERROR_NENABLED = &HBFFF002F& +Global Const VI_ERROR_ABORT = &HBFFF0030& +Global Const VI_ERROR_RAW_WR_PROT_VIOL = &HBFFF0034& +Global Const VI_ERROR_RAW_RD_PROT_VIOL = &HBFFF0035& +Global Const VI_ERROR_OUTP_PROT_VIOL = &HBFFF0036& +Global Const VI_ERROR_INP_PROT_VIOL = &HBFFF0037& +Global Const VI_ERROR_BERR = &HBFFF0038& +Global Const VI_ERROR_IN_PROGRESS = &HBFFF0039& +Global Const VI_ERROR_INV_SETUP = &HBFFF003A& +Global Const VI_ERROR_QUEUE_ERROR = &HBFFF003B& +Global Const VI_ERROR_ALLOC = &HBFFF003C& +Global Const VI_ERROR_INV_MASK = &HBFFF003D& +Global Const VI_ERROR_IO = &HBFFF003E& +Global Const VI_ERROR_INV_FMT = &HBFFF003F& +Global Const VI_ERROR_NSUP_FMT = &HBFFF0041& +Global Const VI_ERROR_LINE_IN_USE = &HBFFF0042& +Global Const VI_ERROR_NSUP_MODE = &HBFFF0046& +Global Const VI_ERROR_SRQ_NOCCURRED = &HBFFF004A& +Global Const VI_ERROR_INV_SPACE = &HBFFF004E& +Global Const VI_ERROR_INV_OFFSET = &HBFFF0051& +Global Const VI_ERROR_INV_WIDTH = &HBFFF0052& +Global Const VI_ERROR_NSUP_OFFSET = &HBFFF0054& +Global Const VI_ERROR_NSUP_VAR_WIDTH = &HBFFF0055& +Global Const VI_ERROR_WINDOW_NMAPPED = &HBFFF0057& +Global Const VI_ERROR_RESP_PENDING = &HBFFF0059& +Global Const VI_ERROR_NLISTENERS = &HBFFF005F& +Global Const VI_ERROR_NCIC = &HBFFF0060& +Global Const VI_ERROR_NSYS_CNTLR = &HBFFF0061& +Global Const VI_ERROR_NSUP_OPER = &HBFFF0067& +Global Const VI_ERROR_INTR_PENDING = &HBFFF0068& +Global Const VI_ERROR_ASRL_PARITY = &HBFFF006A& +Global Const VI_ERROR_ASRL_FRAMING = &HBFFF006B& +Global Const VI_ERROR_ASRL_OVERRUN = &HBFFF006C& +Global Const VI_ERROR_TRIG_NMAPPED = &HBFFF006E& +Global Const VI_ERROR_NSUP_ALIGN_OFFSET = &HBFFF0070& +Global Const VI_ERROR_USER_BUF = &HBFFF0071& +Global Const VI_ERROR_RSRC_BUSY = &HBFFF0072& +Global Const VI_ERROR_NSUP_WIDTH = &HBFFF0076& +Global Const VI_ERROR_INV_PARAMETER = &HBFFF0078& +Global Const VI_ERROR_INV_PROT = &HBFFF0079& +Global Const VI_ERROR_INV_SIZE = &HBFFF007B& +Global Const VI_ERROR_WINDOW_MAPPED = &HBFFF0080& +Global Const VI_ERROR_NIMPL_OPER = &HBFFF0081& +Global Const VI_ERROR_INV_LENGTH = &HBFFF0083& +Global Const VI_ERROR_INV_MODE = &HBFFF0091& +Global Const VI_ERROR_SESN_NLOCKED = &HBFFF009C& +Global Const VI_ERROR_MEM_NSHARED = &HBFFF009D& +Global Const VI_ERROR_LIBRARY_NFOUND = &HBFFF009E& +Global Const VI_ERROR_NSUP_INTR = &HBFFF009F& +Global Const VI_ERROR_INV_LINE = &HBFFF00A0& +Global Const VI_ERROR_FILE_ACCESS = &HBFFF00A1& +Global Const VI_ERROR_FILE_IO = &HBFFF00A2& +Global Const VI_ERROR_NSUP_LINE = &HBFFF00A3& +Global Const VI_ERROR_NSUP_MECH = &HBFFF00A4& +Global Const VI_ERROR_INTF_NUM_NCONFIG = &HBFFF00A5& +Global Const VI_ERROR_CONN_LOST = &HBFFF00A6& +Global Const VI_ERROR_MACHINE_NAVAIL = &HBFFF00A7& +Global Const VI_ERROR_NPERMISSION = &HBFFF00A8& + +' - Other VISA Definitions ------------------------------------------------ + +Global Const VI_FIND_BUFLEN = 256 + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +Global Const VI_INTF_GPIB = 1 +Global Const VI_INTF_VXI = 2 +Global Const VI_INTF_GPIB_VXI = 3 +Global Const VI_INTF_ASRL = 4 +Global Const VI_INTF_PXI = 5 +Global Const VI_INTF_TCPIP = 6 +Global Const VI_INTF_USB = 7 + +Global Const VI_PROT_NORMAL = 1 +Global Const VI_PROT_FDC = 2 +Global Const VI_PROT_HS488 = 3 +Global Const VI_PROT_4882_STRS = 4 +Global Const VI_PROT_USBTMC_VENDOR = 5 + +Global Const VI_FDC_NORMAL = 1 +Global Const VI_FDC_STREAM = 2 + +Global Const VI_LOCAL_SPACE = 0 +Global Const VI_A16_SPACE = 1 +Global Const VI_A24_SPACE = 2 +Global Const VI_A32_SPACE = 3 +Global Const VI_OPAQUE_SPACE = &HFFFF + +Global Const VI_UNKNOWN_LA = -1 +Global Const VI_UNKNOWN_SLOT = -1 +Global Const VI_UNKNOWN_LEVEL = -1 + +Global Const VI_QUEUE = 1 +Global Const VI_ALL_MECH = &HFFFF + +Global Const VI_TRIG_ALL = -2 +Global Const VI_TRIG_SW = -1 +Global Const VI_TRIG_TTL0 = 0 +Global Const VI_TRIG_TTL1 = 1 +Global Const VI_TRIG_TTL2 = 2 +Global Const VI_TRIG_TTL3 = 3 +Global Const VI_TRIG_TTL4 = 4 +Global Const VI_TRIG_TTL5 = 5 +Global Const VI_TRIG_TTL6 = 6 +Global Const VI_TRIG_TTL7 = 7 +Global Const VI_TRIG_ECL0 = 8 +Global Const VI_TRIG_ECL1 = 9 +Global Const VI_TRIG_PANEL_IN = 27 +Global Const VI_TRIG_PANEL_OUT = 28 + +Global Const VI_TRIG_PROT_DEFAULT = 0 +Global Const VI_TRIG_PROT_ON = 1 +Global Const VI_TRIG_PROT_OFF = 2 +Global Const VI_TRIG_PROT_SYNC = 5 + +Global Const VI_READ_BUF = 1 +Global Const VI_WRITE_BUF = 2 +Global Const VI_READ_BUF_DISCARD = 4 +Global Const VI_WRITE_BUF_DISCARD = 8 +Global Const VI_IO_IN_BUF = 16 +Global Const VI_IO_OUT_BUF = 32 +Global Const VI_IO_IN_BUF_DISCARD = 64 +Global Const VI_IO_OUT_BUF_DISCARD = 128 + +Global Const VI_FLUSH_ON_ACCESS = 1 +Global Const VI_FLUSH_WHEN_FULL = 2 +Global Const VI_FLUSH_DISABLE = 3 + +Global Const VI_NMAPPED = 1 +Global Const VI_USE_OPERS = 2 +Global Const VI_DEREF_ADDR = 3 + +Global Const VI_TMO_IMMEDIATE = &H0& +Global Const VI_TMO_INFINITE = &HFFFFFFFF& + +Global Const VI_NO_LOCK = 0 +Global Const VI_EXCLUSIVE_LOCK = 1 +Global Const VI_SHARED_LOCK = 2 +Global Const VI_LOAD_CONFIG = 4 + +Global Const VI_NO_SEC_ADDR = &HFFFF + +Global Const VI_ASRL_PAR_NONE = 0 +Global Const VI_ASRL_PAR_ODD = 1 +Global Const VI_ASRL_PAR_EVEN = 2 +Global Const VI_ASRL_PAR_MARK = 3 +Global Const VI_ASRL_PAR_SPACE = 4 + +Global Const VI_ASRL_STOP_ONE = 10 +Global Const VI_ASRL_STOP_ONE5 = 15 +Global Const VI_ASRL_STOP_TWO = 20 + +Global Const VI_ASRL_FLOW_NONE = 0 +Global Const VI_ASRL_FLOW_XON_XOFF = 1 +Global Const VI_ASRL_FLOW_RTS_CTS = 2 +Global Const VI_ASRL_FLOW_DTR_DSR = 4 + +Global Const VI_ASRL_END_NONE = 0 +Global Const VI_ASRL_END_LAST_BIT = 1 +Global Const VI_ASRL_END_TERMCHAR = 2 +Global Const VI_ASRL_END_BREAK = 3 + +Global Const VI_STATE_ASSERTED = 1 +Global Const VI_STATE_UNASSERTED = 0 +Global Const VI_STATE_UNKNOWN = -1 + +Global Const VI_BIG_ENDIAN = 0 +Global Const VI_LITTLE_ENDIAN = 1 + +Global Const VI_DATA_PRIV = 0 +Global Const VI_DATA_NPRIV = 1 +Global Const VI_PROG_PRIV = 2 +Global Const VI_PROG_NPRIV = 3 +Global Const VI_BLCK_PRIV = 4 +Global Const VI_BLCK_NPRIV = 5 +Global Const VI_D64_PRIV = 6 +Global Const VI_D64_NPRIV = 7 + +Global Const VI_WIDTH_8 = 1 +Global Const VI_WIDTH_16 = 2 +Global Const VI_WIDTH_32 = 4 + +Global Const VI_GPIB_REN_DEASSERT = 0 +Global Const VI_GPIB_REN_ASSERT = 1 +Global Const VI_GPIB_REN_DEASSERT_GTL = 2 +Global Const VI_GPIB_REN_ASSERT_ADDRESS = 3 +Global Const VI_GPIB_REN_ASSERT_LLO = 4 +Global Const VI_GPIB_REN_ASSERT_ADDRESS_LLO = 5 +Global Const VI_GPIB_REN_ADDRESS_GTL = 6 + +Global Const VI_GPIB_ATN_DEASSERT = 0 +Global Const VI_GPIB_ATN_ASSERT = 1 +Global Const VI_GPIB_ATN_DEASSERT_HANDSHAKE = 2 +Global Const VI_GPIB_ATN_ASSERT_IMMEDIATE = 3 + +Global Const VI_GPIB_HS488_DISABLED = 0 +Global Const VI_GPIB_HS488_NIMPL = -1 + +Global Const VI_GPIB_UNADDRESSED = 0 +Global Const VI_GPIB_TALKER = 1 +Global Const VI_GPIB_LISTENER = 2 + +Global Const VI_VXI_CMD16 = &H0200 +Global Const VI_VXI_CMD16_RESP16 = &H0202 +Global Const VI_VXI_RESP16 = &H0002 +Global Const VI_VXI_CMD32 = &H0400 +Global Const VI_VXI_CMD32_RESP16 = &H0402 +Global Const VI_VXI_CMD32_RESP32 = &H0404 +Global Const VI_VXI_RESP32 = &H0004 + +Global Const VI_ASSERT_SIGNAL = -1 +Global Const VI_ASSERT_USE_ASSIGNED = 0 +Global Const VI_ASSERT_IRQ1 = 1 +Global Const VI_ASSERT_IRQ2 = 2 +Global Const VI_ASSERT_IRQ3 = 3 +Global Const VI_ASSERT_IRQ4 = 4 +Global Const VI_ASSERT_IRQ5 = 5 +Global Const VI_ASSERT_IRQ6 = 6 +Global Const VI_ASSERT_IRQ7 = 7 + +Global Const VI_UTIL_ASSERT_SYSRESET = 1 +Global Const VI_UTIL_ASSERT_SYSFAIL = 2 +Global Const VI_UTIL_DEASSERT_SYSFAIL = 3 + +Global Const VI_VXI_CLASS_MEMORY = 0 +Global Const VI_VXI_CLASS_EXTENDED = 1 +Global Const VI_VXI_CLASS_MESSAGE = 2 +Global Const VI_VXI_CLASS_REGISTER = 3 +Global Const VI_VXI_CLASS_OTHER = 4 + +' - Backward Compatibility Macros ----------------------------------------- + +Global Const VI_ERROR_INV_SESSION = &HBFFF000E& +Global Const VI_INFINITE = &HFFFFFFFF& + +Global Const VI_NORMAL = 1 +Global Const VI_FDC = 2 +Global Const VI_HS488 = 3 +Global Const VI_ASRL488 = 4 + +Global Const VI_ASRL_IN_BUF = 16 +Global Const VI_ASRL_OUT_BUF = 32 +Global Const VI_ASRL_IN_BUF_DISCARD = 64 +Global Const VI_ASRL_OUT_BUF_DISCARD = 128 diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h new file mode 100644 index 0000000..3f0413e --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/visatype.h @@ -0,0 +1,206 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by IVI Foundation Inc. */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VISATYPE.H */ +/* Date : 06-08-2017 */ +/* Purpose : Fundamental VISA data types and macro definitions */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VISATYPE_HEADER__ +#define __VISATYPE_HEADER__ + +#if defined(_WIN64) +#define _VI_FAR +#define _VI_FUNC __fastcall +#define _VI_FUNCC __fastcall +#define _VI_FUNCH __fastcall +#define _VI_SIGNED signed +#elif (defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_) +#define _VI_FAR +#define _VI_FUNC __stdcall +#define _VI_FUNCC __cdecl +#define _VI_FUNCH __stdcall +#define _VI_SIGNED signed +#elif defined(_CVI_) && defined(_NI_i386_) +#define _VI_FAR +#define _VI_FUNC _pascal +#define _VI_FUNCC +#define _VI_FUNCH _pascal +#define _VI_SIGNED signed +#elif (defined(_WINDOWS) || defined(_Windows)) && !defined(_NI_mswin16_) +#define _VI_FAR _far +#define _VI_FUNC _far _pascal _export +#define _VI_FUNCC _far _cdecl _export +#define _VI_FUNCH _far _pascal +#define _VI_SIGNED signed +#elif (defined(hpux) || defined(__hpux)) && (defined(__cplusplus) || defined(__cplusplus__)) +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED +#else +#define _VI_FAR +#define _VI_FUNC +#define _VI_FUNCC +#define _VI_FUNCH +#define _VI_SIGNED signed +#endif + +#define _VI_ERROR (-2147483647L-1) /* 0x80000000 */ +#define _VI_PTR _VI_FAR * + +/*- VISA Types --------------------------------------------------------------*/ + +#ifndef _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) || ((defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)) && !defined(_NI_mswin16_)) +#if (defined(_MSC_VER) && (_MSC_VER >= 1200)) || (defined(_CVI_) && (_CVI_ >= 700)) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0520)) || defined(__LCC__) || (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__clang__) && (__clang_major__ >= 3)) +typedef unsigned __int64 ViUInt64; +typedef _VI_SIGNED __int64 ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(_WIN64) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#endif +#elif defined(__GNUC__) && (__GNUC__ >= 3) +#include +#include +typedef u_int64_t ViUInt64; +typedef int64_t ViInt64; +#define _VI_INT64_UINT64_DEFINED +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +#define _VISA_ENV_IS_64_BIT +#else +/* This is a 32-bit OS, not a 64-bit OS */ +#endif +#else +/* This platform does not support 64-bit types */ +#endif +#endif + +#if defined(_VI_INT64_UINT64_DEFINED) +typedef ViUInt64 _VI_PTR ViPUInt64; +typedef ViUInt64 _VI_PTR ViAUInt64; +typedef ViInt64 _VI_PTR ViPInt64; +typedef ViInt64 _VI_PTR ViAInt64; +#endif + +#if defined(LONG_MAX) && (LONG_MAX > 0x7FFFFFFFL) +typedef unsigned int ViUInt32; +typedef _VI_SIGNED int ViInt32; +#else +typedef unsigned long ViUInt32; +typedef _VI_SIGNED long ViInt32; +#endif + +typedef ViUInt32 _VI_PTR ViPUInt32; +typedef ViUInt32 _VI_PTR ViAUInt32; +typedef ViInt32 _VI_PTR ViPInt32; +typedef ViInt32 _VI_PTR ViAInt32; + +typedef unsigned short ViUInt16; +typedef ViUInt16 _VI_PTR ViPUInt16; +typedef ViUInt16 _VI_PTR ViAUInt16; + +typedef _VI_SIGNED short ViInt16; +typedef ViInt16 _VI_PTR ViPInt16; +typedef ViInt16 _VI_PTR ViAInt16; + +typedef unsigned char ViUInt8; +typedef ViUInt8 _VI_PTR ViPUInt8; +typedef ViUInt8 _VI_PTR ViAUInt8; + +typedef _VI_SIGNED char ViInt8; +typedef ViInt8 _VI_PTR ViPInt8; +typedef ViInt8 _VI_PTR ViAInt8; + +typedef char ViChar; +typedef ViChar _VI_PTR ViPChar; +typedef ViChar _VI_PTR ViAChar; + +typedef unsigned char ViByte; +typedef ViByte _VI_PTR ViPByte; +typedef ViByte _VI_PTR ViAByte; + +typedef void _VI_PTR ViAddr; +typedef ViAddr _VI_PTR ViPAddr; +typedef ViAddr _VI_PTR ViAAddr; + +typedef float ViReal32; +typedef ViReal32 _VI_PTR ViPReal32; +typedef ViReal32 _VI_PTR ViAReal32; + +typedef double ViReal64; +typedef ViReal64 _VI_PTR ViPReal64; +typedef ViReal64 _VI_PTR ViAReal64; + +typedef ViPByte ViBuf; +typedef const ViByte * ViConstBuf; +typedef ViPByte ViPBuf; +typedef ViPByte _VI_PTR ViABuf; + +typedef ViPChar ViString; +#ifndef _VI_CONST_STRING_DEFINED +typedef const ViChar * ViConstString; +#define _VI_CONST_STRING_DEFINED +#endif +typedef ViPChar ViPString; +typedef ViPChar _VI_PTR ViAString; + +typedef ViString ViRsrc; +typedef ViConstString ViConstRsrc; +typedef ViString ViPRsrc; +typedef ViString _VI_PTR ViARsrc; + +typedef ViUInt16 ViBoolean; +typedef ViBoolean _VI_PTR ViPBoolean; +typedef ViBoolean _VI_PTR ViABoolean; + +typedef ViInt32 ViStatus; +typedef ViStatus _VI_PTR ViPStatus; +typedef ViStatus _VI_PTR ViAStatus; + +typedef ViUInt32 ViVersion; +typedef ViVersion _VI_PTR ViPVersion; +typedef ViVersion _VI_PTR ViAVersion; + +typedef ViUInt32 ViObject; +typedef ViObject _VI_PTR ViPObject; +typedef ViObject _VI_PTR ViAObject; + +typedef ViObject ViSession; +typedef ViSession _VI_PTR ViPSession; +typedef ViSession _VI_PTR ViASession; + +typedef ViUInt32 ViAttr; + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_SUCCESS (0L) + +/*- Other VISA Definitions --------------------------------------------------*/ + +#define VI_NULL (0) + +#define VI_TRUE (1) +#define VI_FALSE (0) + +/*- Backward Compatibility Macros -------------------------------------------*/ + +#define VISAFN _VI_FUNC +#define ViPtr _VI_PTR + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas new file mode 100644 index 0000000..b126fdb --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.bas @@ -0,0 +1,37 @@ +' ------------------------------------------------------------------------- +' Distributed by VXIplug&play Systems Alliance +' Do not modify the contents of this file. +' ------------------------------------------------------------------------- +' Title : VPPTYPE.BAS +' Date : 02-14-95 +' Purpose : VXIplug&play instrument driver header file +' ------------------------------------------------------------------------- + +Global Const VI_NULL = 0 +Global Const VI_TRUE = 1 +Global Const VI_FALSE = 0 + +' - Completion and Error Codes -------------------------------------------- + +Global Const VI_WARN_NSUP_ID_QUERY = &H3FFC0101& +Global Const VI_WARN_NSUP_RESET = &H3FFC0102& +Global Const VI_WARN_NSUP_SELF_TEST = &H3FFC0103& +Global Const VI_WARN_NSUP_ERROR_QUERY = &H3FFC0104& +Global Const VI_WARN_NSUP_REV_QUERY = &H3FFC0105& + +Global Const VI_ERROR_PARAMETER1 = &HBFFC0001& +Global Const VI_ERROR_PARAMETER2 = &HBFFC0002& +Global Const VI_ERROR_PARAMETER3 = &HBFFC0003& +Global Const VI_ERROR_PARAMETER4 = &HBFFC0004& +Global Const VI_ERROR_PARAMETER5 = &HBFFC0005& +Global Const VI_ERROR_PARAMETER6 = &HBFFC0006& +Global Const VI_ERROR_PARAMETER7 = &HBFFC0007& +Global Const VI_ERROR_PARAMETER8 = &HBFFC0008& +Global Const VI_ERROR_FAIL_ID_QUERY = &HBFFC0011& +Global Const VI_ERROR_INV_RESPONSE = &HBFFC0012& + +' - Additional Definitions ------------------------------------------------ + +Global Const VI_ON = 1 +Global Const VI_OFF = 0 + diff --git a/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h new file mode 100644 index 0000000..88f0453 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Include/vpptype.h @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*/ +/* Distributed by VXIplug&play Systems Alliance */ +/* */ +/* Do not modify the contents of this file. */ +/*---------------------------------------------------------------------------*/ +/* */ +/* Title : VPPTYPE.H */ +/* Date : 02-14-95 */ +/* Purpose : VXIplug&play instrument driver header file */ +/* */ +/*---------------------------------------------------------------------------*/ + +/* IviVisaType.h defines the include guard of this file for backward + * compatibility reasons. Please ensure that changes in this file are reflected + * in IviVisaType.h when necessary. + */ +#ifndef __VPPTYPE_HEADER__ +#define __VPPTYPE_HEADER__ + +#include "visatype.h" + +/*- Completion and Error Codes ----------------------------------------------*/ + +#define VI_WARN_NSUP_ID_QUERY ( 0x3FFC0101L) +#define VI_WARN_NSUP_RESET ( 0x3FFC0102L) +#define VI_WARN_NSUP_SELF_TEST ( 0x3FFC0103L) +#define VI_WARN_NSUP_ERROR_QUERY ( 0x3FFC0104L) +#define VI_WARN_NSUP_REV_QUERY ( 0x3FFC0105L) + +#define VI_ERROR_PARAMETER1 (_VI_ERROR+0x3FFC0001L) +#define VI_ERROR_PARAMETER2 (_VI_ERROR+0x3FFC0002L) +#define VI_ERROR_PARAMETER3 (_VI_ERROR+0x3FFC0003L) +#define VI_ERROR_PARAMETER4 (_VI_ERROR+0x3FFC0004L) +#define VI_ERROR_PARAMETER5 (_VI_ERROR+0x3FFC0005L) +#define VI_ERROR_PARAMETER6 (_VI_ERROR+0x3FFC0006L) +#define VI_ERROR_PARAMETER7 (_VI_ERROR+0x3FFC0007L) +#define VI_ERROR_PARAMETER8 (_VI_ERROR+0x3FFC0008L) +#define VI_ERROR_FAIL_ID_QUERY (_VI_ERROR+0x3FFC0011L) +#define VI_ERROR_INV_RESPONSE (_VI_ERROR+0x3FFC0012L) + + +/*- Additional Definitions --------------------------------------------------*/ + +#define VI_ON (1) +#define VI_OFF (0) + +#endif + +/*- The End -----------------------------------------------------------------*/ + diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib new file mode 100644 index 0000000..a929287 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/nivisa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib new file mode 100644 index 0000000..ef1c82d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/Lib_x64/msc/visa64.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll new file mode 100644 index 0000000..76ccfd2 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DIFxAPI.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini new file mode 100644 index 0000000..83135b1 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DefaultVisaConf.ini @@ -0,0 +1,297 @@ +[VISA-CONFIG] +MinAsyncCount = 512 +SharedMemSize = 524288 +MaxNumResources = 512 +NumSystemSems = 512 +NumProcessSems = 512 +UnloadPassports = 0 +ShowRegisteredDevOnly = 1 +ForceSpyPeekPoke = 0 + +[ALIASES] +NumAliases = 0 + +#Alias0 = "'MyDMM','GPIB0::2::INSTR'" +#An alias entry must have the form "'',''" +#An alias name can contain only alphanumeric characters, "-", and "_". + +[GPIB-VXI-CONFIG] +StartDebug = 0 +DisableAutoFind = 0 +RetryAfterFailure = 1 + +[GPIB-CONFIG] +DisableIbListen = 0 +SRQPollTime = 500 +EnetConnectTmoSec = 6 +AllBoardsEnabled = 1 + +#If 'AllBoardsEnabled' is 1, any 'Board*' entries are ignored + +[TCPIP-RSRCS] +SynchronizeAllSocket = 0 +NumOfResources = 0 + +[TULIP-CONFIG] +UseAgilentVisa = 1 +NativeTypesOnly = 1 +SynchronizeAllVxi = 0 +SynchronizeAllGpib = 1 +Interface0 = 1 +Interface1 = 1 +Interface2 = 1 +Interface3 = 1 +Interface4 = 1 +Interface5 = 1 +Interface6 = 1 +Interface7 = 1 +Interface8 = 1 +Interface9 = 1 +Interface10 = 1 +Interface11 = 1 +Interface12 = 1 +Interface13 = 1 +Interface14 = 1 +Interface15 = 1 +Interface16 = 1 +Interface17 = 1 +Interface18 = 1 +Interface19 = 1 +Interface20 = 1 +Interface21 = 1 +Interface22 = 1 +Interface23 = 1 +Interface24 = 1 +Interface25 = 1 +Interface26 = 1 +Interface27 = 1 +Interface28 = 1 +Interface29 = 1 +Interface30 = 1 +Interface31 = 1 +Interface32 = 1 +Interface33 = 1 +Interface34 = 1 +Interface35 = 1 +Interface36 = 1 +Interface37 = 1 +Interface38 = 1 +Interface39 = 1 +Interface40 = 1 +Interface41 = 1 +Interface42 = 1 +Interface43 = 1 +Interface44 = 1 +Interface45 = 1 +Interface46 = 1 +Interface47 = 1 +Interface48 = 1 +Interface49 = 1 +Interface50 = 1 +Interface51 = 1 +Interface52 = 1 +Interface53 = 1 +Interface54 = 1 +Interface55 = 1 +Interface56 = 1 +Interface57 = 1 +Interface58 = 1 +Interface59 = 1 +Interface60 = 1 +Interface61 = 1 +Interface62 = 1 +Interface63 = 1 +Interface64 = 1 +Interface65 = 1 +Interface66 = 1 +Interface67 = 1 +Interface68 = 1 +Interface69 = 1 +Interface70 = 1 +Interface71 = 1 +Interface72 = 1 +Interface73 = 1 +Interface74 = 1 +Interface75 = 1 +Interface76 = 1 +Interface77 = 1 +Interface78 = 1 +Interface79 = 1 +Interface80 = 1 +Interface81 = 1 +Interface82 = 1 +Interface83 = 1 +Interface84 = 1 +Interface85 = 1 +Interface86 = 1 +Interface87 = 1 +Interface88 = 1 +Interface89 = 1 +Interface90 = 1 +Interface91 = 1 +Interface92 = 1 +Interface93 = 1 +Interface94 = 1 +Interface95 = 1 +Interface96 = 1 +Interface97 = 1 +Interface98 = 1 +Interface99 = 1 +Interface100 = 1 +Interface101 = 1 +Interface102 = 1 +Interface103 = 1 +Interface104 = 1 +Interface105 = 1 +Interface106 = 1 +Interface107 = 1 +Interface108 = 1 +Interface109 = 1 +Interface110 = 1 +Interface111 = 1 +Interface112 = 1 +Interface113 = 1 +Interface114 = 1 +Interface115 = 1 +Interface116 = 1 +Interface117 = 1 +Interface118 = 1 +Interface119 = 1 +Interface120 = 1 +Interface121 = 1 +Interface122 = 1 +Interface123 = 1 +Interface124 = 1 +Interface125 = 1 +Interface126 = 1 +Interface127 = 1 +Interface128 = 1 +Interface129 = 1 +Interface130 = 1 +Interface131 = 1 +Interface132 = 1 +Interface133 = 1 +Interface134 = 1 +Interface135 = 1 +Interface136 = 1 +Interface137 = 1 +Interface138 = 1 +Interface139 = 1 +Interface140 = 1 +Interface141 = 1 +Interface142 = 1 +Interface143 = 1 +Interface144 = 1 +Interface145 = 1 +Interface146 = 1 +Interface147 = 1 +Interface148 = 1 +Interface149 = 1 +Interface150 = 1 +Interface151 = 1 +Interface152 = 1 +Interface153 = 1 +Interface154 = 1 +Interface155 = 1 +Interface156 = 1 +Interface157 = 1 +Interface158 = 1 +Interface159 = 1 +Interface160 = 1 +Interface161 = 1 +Interface162 = 1 +Interface163 = 1 +Interface164 = 1 +Interface165 = 1 +Interface166 = 1 +Interface167 = 1 +Interface168 = 1 +Interface169 = 1 +Interface170 = 1 +Interface171 = 1 +Interface172 = 1 +Interface173 = 1 +Interface174 = 1 +Interface175 = 1 +Interface176 = 1 +Interface177 = 1 +Interface178 = 1 +Interface179 = 1 +Interface180 = 1 +Interface181 = 1 +Interface182 = 1 +Interface183 = 1 +Interface184 = 1 +Interface185 = 1 +Interface186 = 1 +Interface187 = 1 +Interface188 = 1 +Interface189 = 1 +Interface190 = 1 +Interface191 = 1 +Interface192 = 1 +Interface193 = 1 +Interface194 = 1 +Interface195 = 1 +Interface196 = 1 +Interface197 = 1 +Interface198 = 1 +Interface199 = 1 +Interface200 = 1 +Interface201 = 1 +Interface202 = 1 +Interface203 = 1 +Interface204 = 1 +Interface205 = 1 +Interface206 = 1 +Interface207 = 1 +Interface208 = 1 +Interface209 = 1 +Interface210 = 1 +Interface211 = 1 +Interface212 = 1 +Interface213 = 1 +Interface214 = 1 +Interface215 = 1 +Interface216 = 1 +Interface217 = 1 +Interface218 = 1 +Interface219 = 1 +Interface220 = 1 +Interface221 = 1 +Interface222 = 1 +Interface223 = 1 +Interface224 = 1 +Interface225 = 1 +Interface226 = 1 +Interface227 = 1 +Interface228 = 1 +Interface229 = 1 +Interface230 = 1 +Interface231 = 1 +Interface232 = 1 +Interface233 = 1 +Interface234 = 1 +Interface235 = 1 +Interface236 = 1 +Interface237 = 1 +Interface238 = 1 +Interface239 = 1 +Interface240 = 1 +Interface241 = 1 +Interface242 = 1 +Interface243 = 1 +Interface244 = 1 +Interface245 = 1 +Interface246 = 1 +Interface247 = 1 +Interface248 = 1 +Interface249 = 1 +Interface250 = 1 +Interface251 = 1 +Interface252 = 1 +Interface253 = 1 +Interface254 = 1 +Interface255 = 1 + + diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe new file mode 100644 index 0000000..984aaf9 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/DriverWizardInstallInf64.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk new file mode 100644 index 0000000..7de9903 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/Examples.lnk Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe new file mode 100644 index 0000000..06e8021 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NI-VISA Driver Wizard.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe new file mode 100644 index 0000000..f79c46f --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIVisaServer.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe new file mode 100644 index 0000000..d9e9d83 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.exe Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini new file mode 100644 index 0000000..01d9310 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NIvisaic.ini @@ -0,0 +1,2 @@ +[NIvisaic] +allowmultipleinstances=True diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll new file mode 100644 index 0000000..710e1fa --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/NiVisaCom.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll new file mode 100644 index 0000000..ea96987 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiD.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll new file mode 100644 index 0000000..b750d87 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/PxiPlugins/NiViPpiP.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm new file mode 100644 index 0000000..3f34b5a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/ni-visa.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll new file mode 100644 index 0000000..4f48369 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisa_usbverifieru.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm new file mode 100644 index 0000000..be46d01 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/nivisagsg.chm Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll new file mode 100644 index 0000000..ceac61d --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/NIvisa/viic_ext.dll Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib new file mode 100644 index 0000000..15c1832 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/bc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib new file mode 100644 index 0000000..535ef74 --- /dev/null +++ b/softwareDirectory/AutoVerScheme/Visa/lib/msc/visa32.lib Binary files differ diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.cpp b/softwareDirectory/AutoVerScheme/basecommonapi.cpp index 4c41c4e..1b5e63d 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.cpp +++ b/softwareDirectory/AutoVerScheme/basecommonapi.cpp @@ -32,3 +32,33 @@ return result; } + +// 被检设备管理 +QList BaseCommonApi::getTestedDevice() +{ + QList result; + QSqlQuery query; + query.exec("SELECT eei.equipment_name ,eei.model ,eei.help_instruction ,eei.manufacture_no ,eei.product_country ,eei.manufacturer ,eei.product_date ,eei.purchase_date ,eei.unit_price ,eei.usage_status ,eei.quality_condition ,sys_dept.FULL_NAME ," + "eei.category , eei.check_cycle ,eei.level , eei.remark from eqpt_equipment_info eei LEFT JOIN sys_dept ON sys_dept.ID = eei.dept_id WHERE eei.id = :id "); + if (query.exec()) { + while (query.next()) { + TestedDevice testedDevice; + testedDevice.id = query.value("id").toString(); + testedDevice.equipment_name = query.value("equipment_name").toString(); + testedDevice.model = query.value("model").toString(); + testedDevice.help_instruction = query.value("help_instruction").toString(); + testedDevice.manufacture_no = query.value("manufacture_no").toString(); + testedDevice.manufacturer = query.value("manufacturer").toString(); + testedDevice.FULL_NAME = query.value("FULL_NAME").toString(); + testedDevice.meter_identify = query.value("meter_identify").toString(); + testedDevice.check_cycle = query.value("check_cycle").toString(); + testedDevice.certificate_valid = query.value("certificate_valid").toString(); + + result.append(testedDevice); + } + } else { + qDebug() << "Query execution failed: " << query.lastError().text(); + } + + return result; +} diff --git a/softwareDirectory/AutoVerScheme/basecommonapi.h b/softwareDirectory/AutoVerScheme/basecommonapi.h index 0da7c9a..6dd49f8 100644 --- a/softwareDirectory/AutoVerScheme/basecommonapi.h +++ b/softwareDirectory/AutoVerScheme/basecommonapi.h @@ -20,13 +20,27 @@ QString require_over_time; QString is_urgent; }; - +class TestedDevice +{ +public: + QString id; + QString equipment_name; + QString model; + QString help_instruction; + QString manufacture_no; + QString manufacturer; + QString FULL_NAME; + QString meter_identify; + QString check_cycle; + QString certificate_valid; +}; class BaseCommonApi { public: BaseCommonApi(); static QList getAllData(); + static QList getTestedDevice(); }; #endif // BASECOMMONAPI_H diff --git a/softwareDirectory/AutoVerScheme/checkwindow.cpp b/softwareDirectory/AutoVerScheme/checkwindow.cpp index 809b353..9b97f91 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.cpp +++ b/softwareDirectory/AutoVerScheme/checkwindow.cpp @@ -2,6 +2,7 @@ #include "ui_checkwindow.h" #include "dialogcheckresult.h" #include +#include "basecommonapi.h" CheckWindow::CheckWindow(QWidget *parent) : QWidget(parent), @@ -16,6 +17,7 @@ ui->tableWidgetMethod->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); for(int i=0;i<2;i++) ui->tableWidget_3->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); + getCheckDevice(); //ui->stackedWidget_2->setCurrentIndex(1); //ui->tableWidgetDevice->verticalHeader()->sectionResizeMode(QHeaderView::Stretch); } @@ -52,3 +54,26 @@ dlg->setModal(true); dlg->show(); } + +void CheckWindow::getCheckDevice() +{ + QList data = BaseCommonApi::getTestedDevice(); + + int rowCount = 0; + int row=0; + QString State; + for (const TestedDevice& device : data) { + rowCount = ui->tableWidgetDevice->rowCount(); + ui->tableWidgetDevice->insertRow(rowCount); + ui->tableWidgetDevice->setItem(row, 1, new QTableWidgetItem(QString::number(row+1))); + ui->tableWidgetDevice->setItem(row, 2, new QTableWidgetItem(device.equipment_name)); //设置数据 + ui->tableWidgetDevice->setItem(row, 3, new QTableWidgetItem(device.model)); //设置数据 + ui->tableWidgetDevice->setItem(row, 4, new QTableWidgetItem(device.help_instruction)); //设置数据 + ui->tableWidgetDevice->setItem(row, 5, new QTableWidgetItem(device.manufacture_no)); //设置数据 + ui->tableWidgetDevice->setItem(row, 6, new QTableWidgetItem(device.manufacturer)); //设置数据 + ui->tableWidgetDevice->setItem(row, 7, new QTableWidgetItem(device.meter_identify)); //设置数据 + //QDebug + row++; + + } +} diff --git a/softwareDirectory/AutoVerScheme/checkwindow.h b/softwareDirectory/AutoVerScheme/checkwindow.h index f817fc9..005a85a 100644 --- a/softwareDirectory/AutoVerScheme/checkwindow.h +++ b/softwareDirectory/AutoVerScheme/checkwindow.h @@ -20,7 +20,8 @@ void showCheck(); void showMethodWidget(); void showResult(); - +private: + void getCheckDevice(); private: Ui::CheckWindow *ui; }; diff --git a/softwareDirectory/AutoVerScheme/visacommonengine.cpp b/softwareDirectory/AutoVerScheme/visacommonengine.cpp new file mode 100644 index 0000000..53c742b --- /dev/null +++ b/softwareDirectory/AutoVerScheme/visacommonengine.cpp @@ -0,0 +1,86 @@ +#include "visacommonengine.h" +#include + + +VisaCommonEngine::VisaCommonEngine() +{ + +} + +bool VisaCommonEngine::openDevice() +{ + status = viOpenDefaultRM(&defaultRM); + if (status < VI_SUCCESS) + { + qDebug() << "Could not open a session to the VISA Resource Manager!\n"; + } + + status = viOpen(defaultRM, remoteAddr, VI_NULL, VI_NULL, &instr); + if (status < VI_SUCCESS) + { + qDebug() << "Cannot open a session to the device.\n"; + goto Close; + } + + //viQueryf(instr,"IDN ?\n","%t",buffer); + status = viQueryf( instr, "*IDN?\n", "%s", buffer); + + if (status < VI_SUCCESS){ + qDebug() << "Error reading a response from the device.\n"; + }else{ + qDebug() << "Data read:" << retCount << QString::fromLocal8Bit((char*)buffer); + + //ui->textBrowser->setText(QString::fromLocal8Bit((char*)buffer,retCount)); + } + + + /* Set the timeout to 5 seconds (5000 milliseconds). */ + status = viSetAttribute(instr, VI_ATTR_TMO_VALUE, 5000); + + /* Set the baud rate to 4800 (default is 9600). */ + status = viSetAttribute(instr, VI_ATTR_ASRL_BAUD, 4800); + + /* Set the number of data bits contained in each frame (from 5 to 8). + * The data bits for each frame are located in the low-order bits of + * every byte stored in memory. + */ + status = viSetAttribute(instr, VI_ATTR_ASRL_DATA_BITS, 8); + + status = viSetAttribute(instr, VI_ATTR_ASRL_PARITY, VI_ASRL_PAR_NONE); + + status = viSetAttribute(instr, VI_ATTR_ASRL_STOP_BITS, VI_ASRL_STOP_ONE); + + status = viSetAttribute(instr, VI_ATTR_TERMCHAR_EN, VI_TRUE); + + /* Set the termination character to 0xA + */ + status = viSetAttribute(instr, VI_ATTR_TERMCHAR, 0xA); + + + strcpy(stringinput, ":MEASure:VOLTage:DC?\n"); + //strcpy(stringinput, "*IDN?\n"); + status = viWrite(instr, (ViBuf)stringinput, (ViUInt32)strlen(stringinput), &writeCount); + if (status < VI_SUCCESS){ + qDebug() << "Error writing to the device.\n"; + goto Close; + } + + status = viRead(instr, buffer, 100, &retCount); + if (status < VI_SUCCESS){ + qDebug() << "Error reading a response from the device.\n"; + }else{ + qDebug() << "Data read:" << retCount << QString::fromLocal8Bit((char*)buffer,retCount); + + //ui->textBrowser->setText(QString::fromLocal8Bit((char*)buffer,retCount)); + } + +Close: + status = viClose(instr); + status = viClose(defaultRM); + return true; +} + +QString VisaCommonEngine::queryData() +{ + return ""; +} diff --git a/softwareDirectory/AutoVerScheme/visacommonengine.h b/softwareDirectory/AutoVerScheme/visacommonengine.h new file mode 100644 index 0000000..749f62a --- /dev/null +++ b/softwareDirectory/AutoVerScheme/visacommonengine.h @@ -0,0 +1,24 @@ +#ifndef VISACOMMONENGINE_H +#define VISACOMMONENGINE_H +#include "visa.h" +#include + +class VisaCommonEngine +{ +public: + VisaCommonEngine(); + QString queryData(); +private: + bool openDevice(); +private: + ViSession defaultRM; + ViSession instr; + ViUInt32 retCount; + ViUInt32 writeCount; + ViStatus status; + unsigned char buffer[100]; + char stringinput[512]; + ViConstRsrc remoteAddr=""; +}; + +#endif // VISACOMMONENGINE_H