#include <gu_c.hxx>
Public Member Functions | |
ErrE | eErr () const |
bool | isErr (ErrE e) const |
GpibControl (Umi::Factory *puf) | |
GpibControl (Umi::Umi *pum) | |
Interface Initialization Functions | |
GpibControl & | open (bool fSc, const GpibAddress &ga) |
open the GPIB interface | |
GpibControl & | close () |
close the GPIB interface. | |
Low-Level GPIB Control Operations | |
Lightweight operations that provide complete capabilities at a low abstraction level. | |
GpibControl & | updateStb (const GpibSta &gst) |
488.2 11.3.3.4.1 conformant stb generation | |
GpibControl & | ifc (const Umi::Time &ti=Umi::Time(0, 100000)) |
send Interface Clear. | |
GpibControl & | ren (bool f) |
Set Remote Enable according to f. | |
GpibControl & | cac (bool fSync) |
Make the interface the active controller. | |
GpibControl & | gts () |
Make the active controller go to standby. | |
GpibControl & | ist (bool f) |
individual status set | |
GpibControl & | iblinec (unsigned *pCap) |
capability to sense lines | |
GpibControl & | iblines (unsigned *pStat) |
sense lines | |
GpibControl & | rtl () |
return to local | |
GpibControl & | ppc (int v) |
local pp config | |
GpibControl & | rpp (unsigned char *chPpr, const Umi::Time &ti=Umi::Time()) |
request parallel ppoll | |
GpibControl & | wait (StatE fStat, const Umi::Time &ti, bool fIgnTmo=false) |
wait for any specified flag or event active, failes on timeout | |
StatE | fStat () |
Return the interface status flags. | |
Low-Level GPIB I/O Operations | |
Lightweight operations that provide complete capabilities at a low abstraction level.
All transfer functions return the count actually transfered, even on failure | |
int | cmd (const char *pch, int c, const Umi::Time &ti) |
command byte transfer. | |
int | cwr (const char *pch, int c, const Umi::Time &ti, const GpibTermOut >o) |
data byte transfer | |
int | cwr (const char *pch1, int c1, const char *pch2, int c2, const Umi::Time &ti, const GpibTermOut &) |
data byte transfer, like cwr() but with pch1 and pch2 concatenated | |
int | crd (char *pch, int c, const Umi::Time &ti, const GpibTermIn >i, DelE *peDel=0) |
conducted read transfer | |
Configuration and Status Queries | |
bool | isSc () |
system controller | |
int | iPa () |
primary GPIB address of this interface | |
int | iSa () |
secondary GPIB address of this interface (if fSa()) | |
bool | fSa () |
secondary GPIB addressing enabled for this interface | |
const GpibAddress & | ga () const |
GpibAddress of this interface. | |
int | iPaLast () |
most recent sent foreign primary address | |
void | clrPaLast (int i) |
set iPaLast() | |
int | isOpen () |
true if the interface is currently opended | |
IEEE488.2 conformant functions and protocols. | |
These functions and protocols are specified in the IEEE488.2 standard to provide a vendor-independent set of operations. | |
GpibControl & | sendCmds (const char *, unsigned *pc, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.1 - SEND COMMAND. | |
GpibControl & | sendSetup (const GpibAddrList &al, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.2 - SEND SETUP. | |
GpibControl & | sendDataBytes (const char *, unsigned *pc, const char *szTerm="\n", const GpibTermOut >o=GpibTermOut().fEnd(true), const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.3 - SEND DATA BYTES. | |
GpibControl & | send (const GpibAddress &, const char *, unsigned *pc, const char *szTerm="\n", const GpibTermOut >o=GpibTermOut().fEnd(true), const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.4 - SEND. | |
GpibControl & | send (const GpibAddrList &, const char *, unsigned *pc, const char *szTerm="\n", const GpibTermOut >o=GpibTermOut().fEnd(true), const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.4 - SEND (list). | |
GpibControl & | sendsz (const GpibAddress &ga, const char *pch, const char *szTerm="\n", const GpibTermOut >o=GpibTermOut().fEnd(true), const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.4 - SEND (C string, '\0' terminated). | |
GpibControl & | receiveSetup (const GpibAddress &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.5 - RECEIVE SETUP. | |
GpibControl & | rcvRespMsg (char *, unsigned *pc, const GpibTermIn >i=GpibTermIn(), const Umi::Time &ti=Umi::Time(10), DelE *peDel=0) |
IEEE488.2 - 16.2.6 - RECEIVE RESPONSE MESSAGE. | |
GpibControl & | receive (char *, unsigned *pc, const GpibAddress &, const GpibTermIn >i=GpibTermIn(), const Umi::Time &ti=Umi::Time(10), DelE *peDel=0) |
IEEE488.2 - 16.2.7 - RECEIVE. | |
GpibControl & | sendIfc () |
IEEE488.2 - 16.2.8 - SEND IFC. | |
GpibControl & | devClear (const GpibAddrList &al, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.9.1 - DEVICE CLEAR SELECTED (list). | |
GpibControl & | clear (const GpibAddress &gad, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.9.1 - DEVICE CLEAR SELECTED. | |
GpibControl & | devClear (const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.9.2 - DEVICE CLEAR ALL. | |
GpibControl & | enableLocal (const GpibAddrList &al, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.10 - ENABLE LOCAL CONTROLS (list). | |
GpibControl & | enableLocal () |
IEEE488.2 - 16.2.10 - ENABLE LOCAL CONTROLS (all). | |
GpibControl & | enableRemote (const GpibAddrList &al, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.11 - ENABLE REMOTE. | |
GpibControl & | setRWLS (const GpibAddrList &al, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.12 - SET RWLS. | |
GpibControl & | sendLLO (const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.13 - SEND LLO. | |
GpibControl & | passControl (const GpibAddress &al, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.14 - PASS CONTROL. | |
GpibControl & | ppoll (unsigned *puRes, const Umi::Time &ti=Umi::Time(0)) |
IEEE488.2 - 16.2.15 - PPOLL. | |
GpibControl & | ppollConfig (const GpibAddress &ga, int iLine, int iSense, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.16 - PARALLEL POLL CONFIGURE. | |
GpibControl & | ppollUnconfig (const GpibAddrList &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.17 - PARALLEL POLL UNCONFIGURE (list). | |
GpibControl & | ppollUnconfig (const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.17 - PARALLEL POLL UNCONFIGURE. | |
GpibControl & | readStatusByte (char *pch, const GpibAddress &gad, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.18 - READ STATUS BYTE. | |
GpibControl & | trigger (const GpibAddrList &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 16.2.19 - TRIGGER. | |
GpibControl & | reset (const GpibAddrList &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 17.1 - RESET. | |
GpibControl & | findRqs (char *pch, GpibAddrList::const_iterator *pit, const GpibAddrList &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 17.2 - FINDRQS. | |
GpibControl & | allSpoll (GpibStbList *pgs, const GpibAddrList &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 17.3 - ALLSPOLL. | |
GpibControl & | findLstn (GpibAddrList *pga, const GpibAddrList &ga, const Umi::Time &tiSettle=Umi::Time(0, 1000000), const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 17.6 - FINDLSTN. | |
GpibControl & | testSys (GpibResList *prl, const GpibAddrList &ga, const Umi::Time &ti=Umi::Time(10)) |
IEEE488.2 - 17.8 - TESTSYS. |
provides imperative functions for conducting the bus activity.
Errors:
Any error in communicating with one of the UMI driver channels results in a BAD condition, i.e. this object is unusable (isBad()).
Errors returned by the UMI driver channel are related to the failed transaction only, i.e. another transaction may be started. (isFail()).
|
Make the interface the active controller.
|
|
close the GPIB interface. The interface will be offline (i.e. not executing the GPIB protocol) after a successful return.
|
|
command byte transfer.
|
|
conducted read transfer
|
|
data byte transfer
|
|
Return the interface status flags. Any successful operation updates the status flags. |
|
Make the active controller go to standby. The interface must be the controller-in-charge (CIC) in order to execute this command. |
|
send Interface Clear. The interface must be system controller to execute this command
|
|
open the GPIB interface
|
|
Set Remote Enable according to f. The interface must be system controller to execute this command.
|
|
wait for any specified flag or event active, failes on timeout
For any unmasked event, wait() returns when at least one false-to-true transition has been detected since the most recent call to wait() with that event unmasked. If no mask bit is set, wait() returns after ti has elapsed, updating the current status word. if fIgnTmo is set, the E_TMO is not set on timeout. |