88 virtual bool Open(
void) = 0;
110 virtual bool Write(
const char * Str) = 0;
115 virtual bool Write(
const std::string & rStr) = 0;
Abstract IEEE488 instrument class: type definitions.
Platform Dependent Definitions.
int I32
32-bit signed integer.
unsigned int U32
32-bit unsigned integer.
unsigned short U16
16-bit unsigned integer.
IEEE488.2 / SCPI instrument I/O: Instrument buffer management.
Synchronization primitives.
CRecursiveMutex m_Lock
Lock onto the class interface.
virtual bool Write(const CSCPIBuffer &rBuf)=0
Write to a IEEE488 instrument: SCPI buffer class variant.
virtual bool Clear()=0
Clear the instrument.
virtual bool LockExclusive(U32 Timeout)=0
Obtain an exclusive lock for this session.
virtual bool Write(const std::string &rStr)=0
Write to a IEEE488 instrument: C++ string variant.
tResourceName m_Rsrc
Resource name of the instrument.
U32 GetTimeout(void)
Return the timeout for this instrument.
virtual ~CIEEE488Instrument()
virtual bool DiscardEvents(void)=0
Discard service requests.
virtual bool DisableEvent(void)=0
Disable service requests.
virtual bool Timeout(void)=0
Last operation timed out.
virtual bool AssertTrigger(void)=0
Assert a trigger.
virtual bool LockedExclusive()=0
Check whether session is locked exclusively.
U32 m_Timeout
Timeout for operations.
virtual void Close()=0
Close session to this instrument.
virtual bool EnableEvent(void)=0
Enable service requests.
virtual std::string StatusDescription(I32 Status)=0
Return description of status word.
CIEEE488ResourceManager & m_rRrsrcMan
Reference to the associated resource manager.
bool SetTimeout(U32 Timeout)
Set the timeout for this instrument.
CIEEE488Instrument(CIEEE488ResourceManager &rRM, tResourceName Rsrc)
Constructor.
virtual bool IsOpen()=0
Check whether a session to this instrument is open.
virtual bool Unlock()=0
Unlock the session.
virtual bool Read(CSCPIBuffer &rBuf, bool Append=false)=0
Read from a IEEE488 instrument: SCPI buffer class variant.
static const I32 IEEE488_DEFAULT_TIMEOUT
Default timeout (ms)
virtual bool Open(void)=0
Open a session to this IEEE488 instrument.
I32 m_Status
Status of last operation.
virtual bool WaitOnEvent(U32 Timeout)=0
Wait for a service request.
virtual bool ReadSTB(U16 &rSTB)=0
Read status byte.
virtual bool Write(const char *Str)=0
Write to a IEEE488 instrument: C string variant.
IEEE488 Instrument Resource Manager class.
virtual bool Initialize()=0
Initialize the Resource Manager.
virtual bool FindResources(CResourceList &rList, std::string Filter="?*")=0
Find IEEE488 resources.
virtual bool Timeout(void)=0
Last operation timed out.
CMutex m_Lock
Lock onto the resource manager.
virtual std::string StatusDescription(I32 Status)=0
Return description of status word.
CIEEE488ResourceManager()
I32 m_Status
Status of last operation.
virtual ~CIEEE488ResourceManager()
List of VISA resource names.
std::string tResourceName
IEEE488 resource name.
std::recursive_mutex CRecursiveMutex
Recursive Mutex.