Download VISA Implementation Specification for COM

Transcript
Section 3: VISA Resource Template: IVisaSession and IEventManager
3.2.
Page 3-5
VISA Template Interface Overview
This section summarizes the interface that each VISA implementation must incorporate. The different
attributes and operations are described in detail in subsequent sections.
3.2.1. VISA Template Attributes
RULE 3.2.1
VISA COM I/O resources SHALL follow the behaviors defined in section 3.2.1 of VPP 4.3 with the
following exceptions.
RULE 3.2.2
The following attributes SHALL NOT be defined in VISA COM I/O: VI_ATTR_ RM_SESSION,
VI_ATTR_USER_DATA.
OBSERVATION 3.2.1
The value of the attribute VI_ATTR_RSRC_SPEC_VERSION is a fixed value that reflects the version of the
VISA COM I/O specification to which the resource implementation is compliant. This value will change
with subsequent versions of the specification. This value will be identical or related to the VISA
specification number that this specification is based on.
OBSERVATION 3.2.2
There may be resources with different specification versions residing on the same machine, and the
resource manager may return components with different specification versions.
ViVersion Description for VI_ATTR_RSRC_IMPL_VERSION and VI_ATTR_RSRC_SPEC_VERSION
Bits 31 to 20
Bits 19 to 8
Bits 0 to 7
Major Number
Minor Number
Sub-minor Number
Table 3.2.1
3.2.2. IVisaSession Interface
The IVisaSession Interface is defined in IDL as follows.
[
object,
oleautomation,
helpstring("VISA Session Interface"),
uuid(db8cbf03-d6d3-11d4-aa51-00a024ee30bd),
helpcontext(HlpCtxIVisaSession + 49),
pointer_default(unique)
]
interface IVisaSession : IUnknown
{
[propget, helpcontext(HlpCtxIVisaSession + 1), helpstring("Get
implementation version of the component")]
HRESULT ComponentVersion([out, retval] long *pVal);
[propget, helpcontext(HlpCtxIVisaSession + 2), helpstring("Get
COM I/O specification version")]
HRESULT SpecVersion([out, retval] long *pVal);
[propget, helpcontext(HlpCtxIVisaSession + 3), helpstring("Get
description of the hardware interface")]
HRESULT HardwareInterfaceName([out, retval] BSTR *pVal);
[propget, helpcontext(HlpCtxIVisaSession + 4), helpstring("Get
hardware interface number")]
HRESULT HardwareInterfaceNumber([out, retval] short *pVal);
VXIplug&play Systems Alliance
the
the VISA
a
the
VPP-4.3.4: VISA Implementation Specification for COM