rohdeschwarz  0.2.0
TCPIP socket library for Rohde & Schwarz instrument control
cvisa.hpp
Go to the documentation of this file.
1 
7 #ifndef ROHDESCHWARZ_BUSSES_VISA_CVISA_HPP
8 #define ROHDESCHWARZ_BUSSES_VISA_CVISA_HPP
9 
10 
11 // rohdeschwarz
13 
14 
15 // boost
16 #include "boost/dll/shared_library.hpp"
17 
18 
20 {
21 
22 
35 class CVisa
36 {
37 
38 public:
39 
40 
41  // life cycle
42 
48  CVisa();
49 
50 
56  ~CVisa();
57 
58 
64  bool isVisa() const;
65 
66 
67  // visa c functions
68 
73 
74 
79 
80 
85 
86 
91 
92 
97 
98 
103 
104 
109 
110 
115 
116 
121 
122 
127 
128 
133 
134 
139 
140 
145 
146 
151 
152 
157 
158 
163 
164 
169 
170 
171 private:
172 
173  boost::dll::shared_library _visa;
174 
175 
176  // helpers
177 
181  bool load();
182 
183 
187  bool unload();
188 
189 
190 }; // CVisa
191 
192 
193 } // rohdeschwarz::busses::visa
194 #endif // ROHDESCHWARZ_BUSSES_VISA_CVISA_HPP
Runtime interface for the installed VISA C shared library.
Definition: cvisa.hpp:36
VI_FIND_RSRC_PTR viFindRsrc
Function pointer to VISA function viFindRsrc
Definition: cvisa.hpp:78
VI_FIND_NEXT_PTR viFindNext
Function pointer to VISA function viFindNext
Definition: cvisa.hpp:84
VI_DISCARD_EVENTS_PTR viDiscardEvents
Function pointer to VISA function viDiscardEvents
Definition: cvisa.hpp:138
VI_PARSE_RSRC_EX_PTR viParseRsrcEx
Function pointer to VISA function viParseRsrcEx
Definition: cvisa.hpp:90
VI_WAITON_EVENT_PTR viWaitOnEvent
Function pointer to VISA function viWaitOnEvent
Definition: cvisa.hpp:132
VI_OPEN_PTR viOpen
Function pointer to VISA function viOpen
Definition: cvisa.hpp:96
VI_OPEN_DEFAULT_RM_PTR viOpenDefaultRM
Function pointer to VISA function viOpenDefaultRM()
Definition: cvisa.hpp:72
VI_SET_ATTRIBUTE_PTR viSetAttribute
Function pointer to VISA function viSetAttribute
Definition: cvisa.hpp:156
bool isVisa() const
Checks if VISA was loaded.
Definition: cvisa.cpp:50
VI_READ_STB_PTR viReadSTB
Function pointer to VISA function viReadSTB
Definition: cvisa.hpp:144
VI_GPIB_SEND_IFC_PTR viGpibSendIFC
Function pointer to VISA function viGpibSendIFC
Definition: cvisa.hpp:150
VI_READ_PTR viRead
Function pointer to VISA function viRead
Definition: cvisa.hpp:114
VI_CLOSE_PTR viClose
Function pointer to VISA function viClose
Definition: cvisa.hpp:102
VI_WRITE_PTR viWrite
Function pointer to VISA function viWrite
Definition: cvisa.hpp:108
VI_GET_ATTRIBUTE_PTR viGetAttribute
Function pointer to VISA function viGetAttribute
Definition: cvisa.hpp:162
VI_DISABLE_EVENT_PTR viDisableEvent
Function pointer to VISA function viDisableEvent
Definition: cvisa.hpp:126
VI_ENABLE_EVENT_PTR viEnableEvent
Function pointer to VISA function viEnableEvent
Definition: cvisa.hpp:120
VI_STATUS_DESC_PTR viStatusDesc
Function pointer to VISA function viStatusDesc
Definition: cvisa.hpp:168
VISA C function pointer types.
ViStatus(_VI_FUNC * VI_FIND_RSRC_PTR)(ViSession sesn, ViString expr, ViPFindList vi, ViPUInt32 retCnt, ViChar _VI_FAR desc[])
Function pointer type for viFindRsrc
Definition: cvisatypes.hpp:30
ViStatus(_VI_FUNC * VI_CLOSE_PTR)(ViObject vi)
Function pointer type for viClose
Definition: cvisatypes.hpp:54
ViStatus(_VI_FUNC * VI_DISCARD_EVENTS_PTR)(ViSession vi, ViEventType eventType, ViUInt16 mechanism)
Function pointer type for viDiscardEvents
Definition: cvisatypes.hpp:90
ViStatus(_VI_FUNC * VI_OPEN_DEFAULT_RM_PTR)(ViPSession vi)
Function pointer type for viOpenDefaultRM
Definition: cvisatypes.hpp:24
ViStatus(_VI_FUNC * VI_STATUS_DESC_PTR)(ViObject vi, ViStatus status, ViChar _VI_FAR desc[])
Function pointer type for viStatusDesc
Definition: cvisatypes.hpp:120
ViStatus(_VI_FUNC * VI_SET_ATTRIBUTE_PTR)(ViObject vi, ViAttr attrName, ViAttrState attrValue)
Function pointer type for viSetAttribute
Definition: cvisatypes.hpp:108
ViStatus(_VI_FUNC * VI_READ_PTR)(ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt)
Function pointer type for viRead
Definition: cvisatypes.hpp:66
ViStatus(_VI_FUNC * VI_PARSE_RSRC_EX_PTR)(ViSession rmSesn, ViRsrc rsrcName, ViPUInt16 intfType, ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[], ViChar _VI_FAR expandedUnaliasedName[], ViChar _VI_FAR aliasIfExists[])
Function pointer type for viParseRsrcEx
Definition: cvisatypes.hpp:42
ViStatus(_VI_FUNC * VI_OPEN_PTR)(ViSession sesn, ViRsrc name, ViAccessMode mode, ViUInt32 timeout, ViPSession vi)
Function pointer type for viOpen
Definition: cvisatypes.hpp:48
ViStatus(_VI_FUNC * VI_WAITON_EVENT_PTR)(ViSession vi, ViEventType inEventType, ViUInt32 timeout, ViPEventType outEventType, ViPEvent outContext)
Function pointer type for viWaitOnEvent
Definition: cvisatypes.hpp:84
ViStatus(_VI_FUNC * VI_FIND_NEXT_PTR)(ViFindList vi, ViChar _VI_FAR desc[])
Function pointer type for viFindNext
Definition: cvisatypes.hpp:36
ViStatus(_VI_FUNC * VI_GPIB_SEND_IFC_PTR)(ViSession vi)
Function pointer type for viGpibSendIFC
Definition: cvisatypes.hpp:102
ViStatus(_VI_FUNC * VI_DISABLE_EVENT_PTR)(ViSession vi, ViEventType eventType, ViUInt16 mechanism)
Function pointer type for viDisableEvent
Definition: cvisatypes.hpp:78
ViStatus(_VI_FUNC * VI_WRITE_PTR)(ViSession vi, ViBuf buf, ViUInt32 cnt, ViPUInt32 retCnt)
Function pointer type for viWrite
Definition: cvisatypes.hpp:60
ViStatus(_VI_FUNC * VI_READ_STB_PTR)(ViSession vi, ViPUInt16 status)
Function pointer type for viReadSTB
Definition: cvisatypes.hpp:96
ViStatus(_VI_FUNC * VI_GET_ATTRIBUTE_PTR)(ViObject vi, ViAttr attrName, void _VI_PTR attrValue)
Function pointer type for viGetAttribute
Definition: cvisatypes.hpp:114
ViStatus(_VI_FUNC * VI_ENABLE_EVENT_PTR)(ViSession vi, ViEventType eventType, ViUInt16 mechanism, ViEventFilter context)
Function pointer type for viEnableEvent
Definition: cvisatypes.hpp:72