THM1176InstrumentDriver 1.1
C++ API for Metrolab THM1176
Loading...
Searching...
No Matches
MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType > Class Template Reference

THM1176 instrument class. More...

#include <THM1176.h>

Inheritance diagram for MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >:
Collaboration diagram for MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >:

Public Member Functions

 CTHM1176Instrument (RsrcMgrType &rResourceManager, tResourceName ResourceName)
 Constructor.
 
virtual ~CTHM1176Instrument ()
 Destructor.
 
const CErrorListCurrentErrorList ()
 Fetch current error list.
 
void ClearErrorList ()
 Clear the error list.
 
bool Connect (U32 InitialTimeout, bool Exclusive=true, std::string *pErrMsg=nullptr)
 Open the connection to the instrument.
 
void Disconnect ()
 Close the connection to the instrument.
 
bool ParmAveragingSet (const sAveraging< uParm > &rAvg)
 Set the averaging parameter.
 
bool ParmAveragingGet (sAveraging< uParm > &rAvg)
 Fetch the currently selected averaging parameter.
 
bool ParmAveragingGet (sAveraging< sBoundedParm > &rAvg)
 Fetch current averaging parameter, incl. min/max/default.
 
bool ParmSleepSet (bool Sleep)
 Set parameter whether to sleep after each acquisition.
 
bool ParmSleepGet (bool &rSleep)
 Fetch parameter whether to sleep after each acquisition.
 
bool ParmTriggerInputSet (const sInputTrigger< uParm > &rInputTrig)
 Set trigger input parameters.
 
bool ParmTriggerInputGet (sInputTrigger< uParm > &rInputTrig)
 Fetch current trigger input parameters.
 
bool ParmTriggerInputGet (sInputTrigger< sBoundedParm > &rInputTrig)
 Fetch current trigger input parameters, incl. min/max/default.
 
bool ParmUnitsSet (eUnits Units)
 Set measurement units.
 
bool ParmUnitsGet (eUnits &rUnits)
 Fetch currently selected measurement units.
 
bool ParmUseCalibrationSet (bool UseCal)
 Set whether to return calibrated results.
 
bool ParmUseCalibrationGet (bool &rUseCal)
 Fetch parameter whether to return calibrated results.
 
bool ParmRangeSet (const sRange< uParm > &rRange)
 Set measurement range.
 
bool ParmRangeGet (sRange< uParm > &rRange)
 Fetch currently selected measurement range.
 
bool ParmRangeGet (sRange< sBoundedParm > &rRange)
 Fetch currently selected measurement range, incl. min/max/default.
 
bool ReadFileDirectory (U32 &rUsedBytes, U32 &rAvailableBytes, tFileList &rFileList)
 Read the instrument's file directory information.
 
bool ReadFile (std::string Path, std::string &rContent)
 Read a file from the instrument's file system.
 
bool Initiate (bool Continuous=false)
 Initiate measurements.
 
bool Abort (void)
 Abort a measurement in progress.
 
bool SendBusTrigger ()
 Send a USB bus trigger.
 
bool MeasurementsGet (U32 NoMeasurements, CFluxList &rBx, CFluxList &rBy, CFluxList &rBz, eUnits &rUnits, U16 &rTemp, CTimestampList &rTimestampList, sMeasurementConditions *pMeasurementConditions=NULL)
 Retrieve measurements: short form.
 
bool MeasurementsGet (sArbitraryMeasurements ArbSelect, CFluxList &rBx, CFluxList &rBy, CFluxList &rBz, eUnits &rUnits, U16 &rTemp, CTimestampList &rTimestampList, sMeasurementConditions *pMeasurementConditions=NULL)
 Retrieve measurements: long form.
 
bool SetFormat (eCommunicationFormat Format)
 Select whether data is returned as text or binary.
 
bool GetFormat (eCommunicationFormat &Format)
 Retrieve whether data is returned as text or binary.
 
bool Measure (tFlux &rBx, tFlux &rBy, tFlux &rBz, bool DefaultParms=true, eUnits Units=kT, tFlux ExpectedField=0., unsigned int NoDigits=0)
 High-level measurement: single measurement.
 
bool Measure (CFluxList &rBx, CFluxList &rBy, CFluxList &rBz, unsigned int NoMeasurements=1, bool DefaultParms=true, eUnits Units=kT, tFlux ExpectedField=0., unsigned int NoDigits=0)
 High-level measurement: multiple measurements.
 
bool StatusPreset ()
 Reset OPERation and QUEStionable enable registers.
 
bool StatusGet (sStatusRegister Reg, U16 &rStatus)
 Fetch current value of a single status register.
 
bool StatusGet (RegisterList Regs, StatusValues &rStatus)
 Fetch current values of a list of status registers.
 
bool StatusSetEnableRegister (eStatusRegisterSet Set, U16 DisableMask, U16 EnableMask)
 Disable and enable bits in the given enable register.
 
bool WriteAndRead (const std::string &rWriteStr, CSCPIBuffer &rReadBuffer)
 Write an arbitrary command and read the result.
 
bool GetIdentification (std::string &rIdentification)
 Fetch the intrument's identification string.
 
bool GetIdentification (sIdentifier &rIdentification)
 Fetch the intrument's parsed identification string.
 
bool GetAllRanges (CFluxList &rRanges)
 Fetch all the intrument's ranges.
 
bool ConvertTimestamp (const U64 RawTimestamp, CAbsoluteTimestamp &rTimestamp)
 Convert a raw timestamp to UNIX Epoch time and nanoseconds.
 
bool GetAllUnits (CUnitsList &rUnits)
 Fetch all units supported by instrument.
 
bool GetDivisor (eUnits Units, U32 &rDivisor)
 Fetch divisor to convert instrument's base units to given units.
 
bool GetRotationMatrix (Matrix3f &Matrix)
 Fetch the intrument's rotation matrix, to correct angular error.
 
bool GetImmediateMeasurementPeriod (const sAveraging< uParm > &rAvg, eModelRevision modelRev, F64 &rPeriod)
 Compute measurement interval for Immediate Trigger, for a given averaging parameter.
 
bool CalibrateZeroOffset (bool ForceCalibration=false)
 Perform the Zero Offset calibration procedure.
 
bool RestoreZeroOffset ()
 Restore the factory values for the Zero Offset.
 
bool Reset ()
 Reset the instrument to power-on configuration.
 
bool SwitchToDFUMode ()
 Enter the Device Firmware Upgrade mode.
 
bool ReadInformationDates (std::string &rSManufacturingDate, std::time_t &rManufacturingDate, std::string &rSCalibrationDate, std::time_t &rCalibrationDate)
 Fetch the intrument's date information.
 
bool AbortRead ()
 Abort a read operation.
 

Detailed Description

template<class InstrType, class RsrcMgrType>
class MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >

THM1176 instrument class.

Abstraction of a Metrolab THM1176 Three-axis Hall Magnetometer or TFM1186 Three-axis Fluxgate Magnetometer.

Template Parameters
InstrTypeInstrument class to use for communication, e.g. CVISAInstrument or CUSBTMCInstrument
RsrcMgrTypeAssociated Resource Manager, e.g. CVISAResourceManager or CUSBTMCResourceManager

Definition at line 97 of file THM1176.h.

Constructor & Destructor Documentation

◆ CTHM1176Instrument()

template<class InstrType, class RsrcMgrType>
CTHM1176Instrument::CTHM1176Instrument ( RsrcMgrType & rResourceManager,
tResourceName ResourceName )

Constructor.

Parameters
[in]rResourceManagerResource Manager.
[in]ResourceNameResource name.

Definition at line 812 of file THM1176.cpp.

◆ ~CTHM1176Instrument()

template<class InstrType, class RsrcMgrType>
CTHM1176Instrument::~CTHM1176Instrument ( )
virtual

Destructor.

Definition at line 819 of file THM1176.cpp.

Member Function Documentation

◆ Abort()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::Abort ( void )

Abort a measurement in progress.

Returns
True if successful.

Definition at line 1463 of file THM1176.cpp.

◆ AbortRead()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::AbortRead ( )

Abort a read operation.

Returns
True if successful.

Note: This operation is nonoperational for instruments with firmware version 3.1 or below. It will cause your instrument to lock up.

Definition at line 2297 of file THM1176.cpp.

◆ CalibrateZeroOffset()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::CalibrateZeroOffset ( bool ForceCalibration = false)

Perform the Zero Offset calibration procedure.

Parameters
[in]ForceCalibrationOverride warnings about models that should not be calibrated
Returns
True if successful.

Notes:

  1. The instrument must be placed in a zero-gauss chamber.
  2. Should not be performed on a TFM1186.

Definition at line 2088 of file THM1176.cpp.

◆ ClearErrorList()

template<class InstrType, class RsrcMgrType>
void CTHM1176Instrument::ClearErrorList ( )

Clear the error list.

Definition at line 838 of file THM1176.cpp.

◆ Connect()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::Connect ( U32 InitialTimeout,
bool Exclusive = true,
std::string * pErrMsg = nullptr )

Open the connection to the instrument.

Parameters
[in]InitialTimeoutTimeout on exclusive lock request.
[in]ExclusiveWhether or not to request an exclusive lock.
[in]pErrMsgOptional error message.
Returns
True if the connection was successful.

Definition at line 850 of file THM1176.cpp.

◆ ConvertTimestamp()

template<class InstrType, class RsrcMgrType>
bool MTL::Instrument::CTHM1176Instrument< InstrType, RsrcMgrType >::ConvertTimestamp ( const U64 RawTimestamp,
CAbsoluteTimestamp & rTimestamp )
inline

Convert a raw timestamp to UNIX Epoch time and nanoseconds.

Parameters
[in]RawTimestampRaw timestamp returned by instrument.
[out]rTimestampTimestamp as UNIX Epoch time and nanoseconds.
Returns
True if successful.

Definition at line 427 of file THM1176.h.

◆ CurrentErrorList()

template<class InstrType, class RsrcMgrType>
const CErrorList & CTHM1176Instrument::CurrentErrorList ( )

Fetch current error list.

Returns
List of errors.

Definition at line 832 of file THM1176.cpp.

◆ Disconnect()

template<class InstrType, class RsrcMgrType>
void CTHM1176Instrument::Disconnect ( )

Close the connection to the instrument.

Definition at line 917 of file THM1176.cpp.

◆ GetAllRanges()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetAllRanges ( CFluxList & rRanges)

Fetch all the intrument's ranges.

Parameters
[out]rRangesList of ranges.
Returns
True if successful.

Definition at line 2011 of file THM1176.cpp.

◆ GetAllUnits()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetAllUnits ( CUnitsList & rUnits)

Fetch all units supported by instrument.

Parameters
[out]rUnitsList of units.
Returns
True if successful.

Definition at line 2023 of file THM1176.cpp.

◆ GetDivisor()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetDivisor ( eUnits Units,
U32 & rDivisor )

Fetch divisor to convert instrument's base units to given units.

Parameters
[in]UnitsUnits for which we want the divisor.
[out]rDivisorThe returned divisor; zero if error.
Returns
True if successful.

Definition at line 2035 of file THM1176.cpp.

◆ GetFormat()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetFormat ( eCommunicationFormat & Format)

Retrieve whether data is returned as text or binary.

Parameters
[out]FormatText or binary.
Returns
True if successful.

Definition at line 1717 of file THM1176.cpp.

◆ GetIdentification() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetIdentification ( sIdentifier & rIdentification)

Fetch the intrument's parsed identification string.

Parameters
[out]rIdentificationReturned identification string.
Returns
True if successful.

Definition at line 2001 of file THM1176.cpp.

◆ GetIdentification() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetIdentification ( std::string & rIdentification)

Fetch the intrument's identification string.

Parameters
[out]rIdentificationReturned identification string.
Returns
True if successful.

Definition at line 1991 of file THM1176.cpp.

◆ GetImmediateMeasurementPeriod()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetImmediateMeasurementPeriod ( const sAveraging< uParm > & rAvg,
eModelRevision modelRev,
F64 & rPeriod )

Compute measurement interval for Immediate Trigger, for a given averaging parameter.

Parameters
[in]rAvgAveraging setting.
[in]modelRevTHM1176 Model: kA for THM1176-A. kB for THM1176-B.
[out]rPeriodCorresponding measurement period, in s.
Returns
True if successful.

Definition at line 2062 of file THM1176.cpp.

◆ GetRotationMatrix()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::GetRotationMatrix ( Matrix3f & Matrix)

Fetch the intrument's rotation matrix, to correct angular error.

Parameters
[out]MatrixThe returned rotation matrix.
Returns
True if successful.

Definition at line 2055 of file THM1176.cpp.

◆ Initiate()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::Initiate ( bool Continuous = false)

Initiate measurements.

Parameters
[in]ContinuousWhether to measure continuously.
Returns
True if successful.

Definition at line 1447 of file THM1176.cpp.

◆ Measure() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::Measure ( CFluxList & rBx,
CFluxList & rBy,
CFluxList & rBz,
unsigned int NoMeasurements = 1,
bool DefaultParms = true,
eUnits Units = kT,
tFlux ExpectedField = 0.,
unsigned int NoDigits = 0 )

High-level measurement: multiple measurements.

Parameters
[out]rBxMeasured Bx values.
[out]rByMeasured By values.
[out]rBzMeasured Bz values.
[in]NoMeasurementsNumber of measurements.
[in]DefaultParmsUse default or currently selected parameters.
[in]UnitsMeasurement units.
[in]ExpectedFieldSelect range for this expected field.
[in]NoDigitsNumber of digits to return.
Returns
True if successful.

Definition at line 1812 of file THM1176.cpp.

◆ Measure() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::Measure ( tFlux & rBx,
tFlux & rBy,
tFlux & rBz,
bool DefaultParms = true,
eUnits Units = kT,
tFlux ExpectedField = 0.,
unsigned int NoDigits = 0 )

High-level measurement: single measurement.

Parameters
[out]rBxMeasured Bx value.
[out]rByMeasured By value.
[out]rBzMeasured Bz value.
[in]DefaultParmsUse default or currently selected parameters.
[in]UnitsMeasurement units.
[in]ExpectedFieldSelect range for this expected field.
[in]NoDigitsNumber of digits to return.
Returns
True if successful.

Definition at line 1754 of file THM1176.cpp.

◆ MeasurementsGet() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::MeasurementsGet ( sArbitraryMeasurements ArbSelect,
CFluxList & rBx,
CFluxList & rBy,
CFluxList & rBz,
eUnits & rUnits,
U16 & rTemp,
CTimestampList & rTimestampList,
sMeasurementConditions * pMeasurementConditions = NULL )

Retrieve measurements: long form.

Parameters
[in]ArbSelectSelect which data to return, and how much.
[out]rBxMeasured Bx values; empty if not selected.
[out]rByMeasured By values; empty if not selected.
[out]rBzMeasured Bz values; empty if not selected.
[out]rUnitsUnits in which data is returned.
[out]rTempReturned temperature; zero if not selected.
[out]rTimestampListTimestamp for each measurement; empty if not selected.
[out]pMeasurementConditionsAveraging, trigger and calibration parameters.
Returns
True if successful.

Note: If pMeasurementConditions is NULL (the default), the measurement parameters are not returned.

Definition at line 1511 of file THM1176.cpp.

◆ MeasurementsGet() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::MeasurementsGet ( U32 NoMeasurements,
CFluxList & rBx,
CFluxList & rBy,
CFluxList & rBz,
eUnits & rUnits,
U16 & rTemp,
CTimestampList & rTimestampList,
sMeasurementConditions * pMeasurementConditions = NULL )

Retrieve measurements: short form.

Parameters
[in]NoMeasurementsNumber of measurements.
[out]rBxMeasured Bx values.
[out]rByMeasured By values.
[out]rBzMeasured Bz values.
[out]rUnitsUnits in which data is returned.
[out]rTempReturned temperature.
[out]rTimestampListTimestamp for each measurement.
[out]pMeasurementConditionsAveraging, trigger and calibration parameters.
Returns
True if successful.

Note: If pMeasurementConditions is NULL (the default), the measurement parameters are not returned.

Definition at line 1491 of file THM1176.cpp.

◆ ParmAveragingGet() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmAveragingGet ( sAveraging< sBoundedParm > & rAvg)

Fetch current averaging parameter, incl. min/max/default.

Parameters
[out]rAvgAveraging parameters, incl. min/max/default.
Returns
True if successful.

Definition at line 964 of file THM1176.cpp.

◆ ParmAveragingGet() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmAveragingGet ( sAveraging< uParm > & rAvg)

Fetch the currently selected averaging parameter.

Parameters
[out]rAvgCurrent averaging parameters.
Returns
True if successful.

Definition at line 942 of file THM1176.cpp.

◆ ParmAveragingSet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmAveragingSet ( const sAveraging< uParm > & rAvg)

Set the averaging parameter.

Parameters
[in]rAvgDesired averaging setting.
Returns
True if successful.

Definition at line 930 of file THM1176.cpp.

◆ ParmRangeGet() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmRangeGet ( sRange< sBoundedParm > & rRange)

Fetch currently selected measurement range, incl. min/max/default.

Parameters
[out]rRangeMeasurement range, incl. min/max/default.
Returns
True if successful.

Definition at line 1285 of file THM1176.cpp.

◆ ParmRangeGet() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmRangeGet ( sRange< uParm > & rRange)

Fetch currently selected measurement range.

Parameters
[out]rRangeMeasurement range.
Returns
True if successful.

Definition at line 1247 of file THM1176.cpp.

◆ ParmRangeSet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmRangeSet ( const sRange< uParm > & rRange)

Set measurement range.

Parameters
[in]rRangeDesired measurement range.
Returns
True if successful.

Definition at line 1221 of file THM1176.cpp.

◆ ParmSleepGet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmSleepGet ( bool & rSleep)

Fetch parameter whether to sleep after each acquisition.

Parameters
[out]rSleepWhether or not to sleep.
Returns
True if successful.

Definition at line 1004 of file THM1176.cpp.

◆ ParmSleepSet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmSleepSet ( bool Sleep)

Set parameter whether to sleep after each acquisition.

Parameters
[in]SleepWhether or not to sleep.
Returns
True if successful.

Definition at line 994 of file THM1176.cpp.

◆ ParmTriggerInputGet() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmTriggerInputGet ( sInputTrigger< sBoundedParm > & rInputTrig)

Fetch current trigger input parameters, incl. min/max/default.

Parameters
[out]rInputTrigTrigger input parameters, incl. min/max/default.
Returns
True if successful.

Definition at line 1097 of file THM1176.cpp.

◆ ParmTriggerInputGet() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmTriggerInputGet ( sInputTrigger< uParm > & rInputTrig)

Fetch current trigger input parameters.

Parameters
[out]rInputTrigTrigger input parameters.
Returns
True if successful.

Definition at line 1052 of file THM1176.cpp.

◆ ParmTriggerInputSet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmTriggerInputSet ( const sInputTrigger< uParm > & rInputTrig)

Set trigger input parameters.

Parameters
[in]rInputTrigTrigger input parameters.
Returns
True if successful.

Definition at line 1014 of file THM1176.cpp.

◆ ParmUnitsGet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmUnitsGet ( eUnits & rUnits)

Fetch currently selected measurement units.

Parameters
[out]rUnitsMeasurement units.
Returns
True if successful.

Definition at line 1170 of file THM1176.cpp.

◆ ParmUnitsSet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmUnitsSet ( eUnits Units)

Set measurement units.

Parameters
[in]UnitsMeasurement units.
Returns
True if successful.

Definition at line 1148 of file THM1176.cpp.

◆ ParmUseCalibrationGet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmUseCalibrationGet ( bool & rUseCal)

Fetch parameter whether to return calibrated results.

Parameters
[out]rUseCalWhether to return calibrated results.
Returns
True if successful.

Definition at line 1211 of file THM1176.cpp.

◆ ParmUseCalibrationSet()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ParmUseCalibrationSet ( bool UseCal)

Set whether to return calibrated results.

Parameters
[in]UseCalWhether to return calibrated results.
Returns
True if successful.

Definition at line 1194 of file THM1176.cpp.

◆ ReadFile()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ReadFile ( std::string Path,
std::string & rContent )

Read a file from the instrument's file system.

Parameters
[in]PathPath of file to be read.
[out]rContentContents of file.
Returns
True if successful.

Definition at line 1403 of file THM1176.cpp.

◆ ReadFileDirectory()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ReadFileDirectory ( U32 & rUsedBytes,
U32 & rAvailableBytes,
tFileList & rFileList )

Read the instrument's file directory information.

Parameters
[out]rUsedBytesNumber of bytes occupied by files.
[out]rAvailableBytesNumber of bytes still available.
[out]rFileListList of files.
Returns
True if successful.

Definition at line 1338 of file THM1176.cpp.

◆ ReadInformationDates()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::ReadInformationDates ( std::string & rSManufacturingDate,
std::time_t & rManufacturingDate,
std::string & rSCalibrationDate,
std::time_t & rCalibrationDate )

Fetch the intrument's date information.

Parameters
[out]rSManufacturingDateManufacturing date as string.
[out]rManufacturingDateManufacturing date as time structure.
[out]rSCalibrationDateCalibration date as string.
[out]rCalibrationDateCalibration date as time structure.
Returns
True if successful.

Definition at line 2242 of file THM1176.cpp.

◆ Reset()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::Reset ( )

Reset the instrument to power-on configuration.

Returns
True if successful.

Definition at line 2179 of file THM1176.cpp.

◆ RestoreZeroOffset()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::RestoreZeroOffset ( )

Restore the factory values for the Zero Offset.

Returns
True if successful.

Definition at line 2148 of file THM1176.cpp.

◆ SendBusTrigger()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::SendBusTrigger ( )

Send a USB bus trigger.

Returns
True if successful.

Definition at line 1472 of file THM1176.cpp.

◆ SetFormat()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::SetFormat ( eCommunicationFormat Format)

Select whether data is returned as text or binary.

Parameters
[in]FormatSelect text or binary.
Returns
True if successful.

Definition at line 1680 of file THM1176.cpp.

◆ StatusGet() [1/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::StatusGet ( RegisterList Regs,
StatusValues & rStatus )

Fetch current values of a list of status registers.

Parameters
[in]RegsRegisters to fetch.
[out]rStatusRegister values; zero if error.
Returns
True if successful.

Definition at line 1910 of file THM1176.cpp.

◆ StatusGet() [2/2]

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::StatusGet ( sStatusRegister Reg,
U16 & rStatus )

Fetch current value of a single status register.

Parameters
[in]RegRegister to fetch.
[out]rStatusRegister value; zero if error.
Returns
True if successful.

Definition at line 1880 of file THM1176.cpp.

◆ StatusPreset()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::StatusPreset ( )

Reset OPERation and QUEStionable enable registers.

Returns
True if successful.

Definition at line 1871 of file THM1176.cpp.

◆ StatusSetEnableRegister()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::StatusSetEnableRegister ( eStatusRegisterSet Set,
U16 DisableMask,
U16 EnableMask )

Disable and enable bits in the given enable register.

Parameters
[in]SetRegister set whose enable register is to be modified.
[in]DisableMaskBits to be disabled.
[in]EnableMaskBits to be enabled.
Returns
True if successful.

Note: The DisableMask is applied before the EnableMask, so the EnableMask takes precedence.

Definition at line 1955 of file THM1176.cpp.

◆ SwitchToDFUMode()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::SwitchToDFUMode ( )

Enter the Device Firmware Upgrade mode.

Returns
True if successful.

Note: This function is intended for use by the manufacturer only. It can cause your instrument to become nonoperational.

Definition at line 2232 of file THM1176.cpp.

◆ WriteAndRead()

template<class InstrType, class RsrcMgrType>
bool CTHM1176Instrument::WriteAndRead ( const std::string & rWriteStr,
CSCPIBuffer & rReadBuffer )

Write an arbitrary command and read the result.

Parameters
[in]rWriteStrCommand to write.
[out]rReadBufferReturned result.
Returns
True if successful.

Definition at line 323 of file THM1176.cpp.


The documentation for this class was generated from the following files: